0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ADBへ クレデンシャル・ウォレットを利用して接続 [SQL*Plus][SQL Developer]

Last updated at Posted at 2025-11-10

この記事について

Autonomous Database にクレデンシャル・ウォレットを使用して接続する

クレデンシャル・ウォレットのダウンロード

↓ OCIのコンソールにアクセスし、左上のメニューから Oracle AI Database を選択
Oracle AI Databaseのメニュー一覧が表示されたら、 Autonomous AI Database をクリック

image.png

↓ 作成したATPインスタンスをクリックし、ATPインスタンスの詳細画面を表示。

image.png

↓ 詳細画面の データベース接続 をクリック

image.png

image.png

↓ ダウンロードウィザードが起動するので、 ウォレットのダウンロード をクリック

image.png

↓ ウォレットファイルに付与するパスワードを入力し、ダウンロードをクリックして、手元のPCの任意の場所に保存

image.png

image.png

↓ 接続文字列 は以下の通り

image.png

image.png

設定ファイルの編集

作成したADBインスタンスに接続するためには、
接続に使用するクライアントの設定ファイルの編集を行う必要がある
この設定を OCI Cloud Shell で行う

Cloud Shellは、
Oracle CloudコンソールからアクセスできるWebブラウザ・ベースのターミナルで、
Oracle Cloud Infrastructureの全ユーザーが利用可能
ローカルの端末にOCI-CLIをインストールせずとも、コンソール上でコマンドベースの操作が可能

↓ Cloud Shellを開く
Oracle Cloud Infrastructureのテナンシにサインインし、
コンソールのヘッダーにあるコマンド・プロンプト・アイコンをクリック

image.png

image.png

↓ Cloud Shell環境が作成され、
コマンドを実行したりAutonomous Databaseに接続したりすることが可能
Cloud Shellの起動には、約1分ほどの時間がかかる

image.png

↓ ADB WalletをCloud Shell上にアップロードする
Cloud Shellの上部のメニューをクリックし「アップロード」をクリック
ダウンロードしたファイルを"Drag & Drop"する
Cloud Shellの画面に、ファイルを直接"Drag & Drop"してアップロードすることも可能

image.png

image.png

image.png

image.png

↓ lsコマンドで、ファイルが正しくアップロードされていることを確認します。

ls

「Wallet_aitestatp001.zip」が存在していればOKです。

↓ 出力例

$ ls
command_compute-capacity-report  compartment_id.txt  input.json  sche2.json  shape-availabilities_standarde5.json  Wallet_aitestatp001.zip

格納用のディレクトリを作成し、ウォレットファイルを$HOME/network/admin 配下に移動
格納用のディレクトリを作成する

mkdir -p ~/network/admin

ウォレットファイル Wallet_atp01.zip を移動

mv Wallet_aitestatp001.zip ~/network/admin

作成したディレクトリに移動し、圧縮されたウォレットファイルを展開
作成したディレクトリに移動

cd ~/network/admin
unzip Wallet_atp01.zip

↓ lsコマンドでadminディレクトリ内のファイルを一覧し、次のようなファイルが揃っていればOK

$ ls
cwallet.sso  ewallet.p12  ewallet.pem  keystore.jks  ojdbc.properties  README  sqlnet.ora  tnsnames.ora  truststore.jks  Wallet_aitestatp001.zip

↓ TNS_ADMIN 環境変数にウォレットの保存先を設定します。

export TNS_ADMIN=~/network/admin

↓ 出力例

$ export TNS_ADMIN=~/network/admin
$
$ env | grep TNS
TNS_ADMIN=/home/xxxxxxxxxxxxxxxx/network/admin

↓ sqlnet.ora の下記の行を編集し、ウォレットの保存先を置き換える
前の手順で、保存先をTNS_ADMIN環境変数に格納しているため、こちらを使用する

編集前:

WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="?/network/admin")))

編集後:

WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY=$TNS_ADMIN)))

↓ 環境変数"ORACLE_HOME"を設定

export ORACLE_HOME=~

echoコマンドで中身を確認し、/home/[username] が出力されればOK

echo $ORACLE_HOME

↓ tnsnames.oraから、接続用のサービス情報を確認
次にように4つの接続サービスがあることが分かる

$ cat tnsnames.ora 
aitestatp001_high = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-chicago-1.oraclecloud.com))(connect_data=(service_name=g2b790413f0a7c4_aitestatp001_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)))

aitestatp001_low = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-chicago-1.oraclecloud.com))(connect_data=(service_name=g2b790413f0a7c4_aitestatp001_low.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)))

aitestatp001_medium = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-chicago-1.oraclecloud.com))(connect_data=(service_name=g2b790413f0a7c4_aitestatp001_medium.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)))

aitestatp001_tp = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-chicago-1.oraclecloud.com))(connect_data=(service_name=g2b790413f0a7c4_aitestatp001_tp.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)))

aitestatp001_tpurgent = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-chicago-1.oraclecloud.com))(connect_data=(service_name=g2b790413f0a7c4_aitestatp001_tpurgent.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)))

ADBに接続

SQL*Plus を使った接続 (on Cloud Shell)

Cloud Shellには、SQL Plusのクライアントが実装されているため、
OCI上のADBに簡単に接続が可能

↓ 次のコマンドをCloud Shellのターミナルに入力し、ADBにSQL*Plusを起動する

sqlplus [username]/[password]@[接続サービス名]

SQL> 
SQL> SELECT USERNAME FROM USER_USERS ;

USERNAME
--------------------------------------------------------------------------------
ADMIN

SQL> 
SQL>

SQL Developer インストール&接続

↓ 以下サイトにアクセス

image.png

↓ ”Windows 64-bit with JDK 17 included”をダウンロード

image.png

ダウンロードしたファイルを任意のフォルダで解凍
展開フォルダにある、sqldeveloper.exeを実行

SQL Developerが起動する

↓ インポート・プリファレンスの確認ポップアップが表示されるので、必要に応じて指定する
本環境では、デフォルトのまま[いいえ]をクリックする

image.png

↓ Oracleに使用状況のレポートを送付するかの確認ポップアップが表示されるので、必要に応じて設定し、[OK]をクリック

image.png

手元のPCにインストールしたクライアントツールを利用してアクセスする
SQL Developerを起動し、管理者アカウント(ADMIN)でADBへ接続する

↓ SQL Developerを起動後、画面左上の接続アイコンをクリック

image.png

以下の記載例を参考に各項目を入力し、ADBインスタンスへの接続設定を行う

  • 各項目に接続情報を入力します。
  • Name : aitest_atp001_high_admin
    • ("high"は接続サービスの一つ)
  • ユーザー名 : admin
  • パスワード : xxxxxxxx
    • (インスタンス作成時に設定したADMINユーザーのパスワード)
  • パスワードの保存 チェックあり
    • (実際の運用に際しては、セキュリティ要件を踏まえ設定ください)
  • 接続タイプ : クラウド・ウォレット
  • 構成ファイル (事前にダウンロードしておいたウォレットファイルを選択)
  • サービス:aitestatp001_high を選択

テスト をクリックし、正しく接続できるか確認する
(正しく接続出来れば、左下のステータスに 成功 と表示されます。)

テストに成功したことを確認し保存をクリックします。
(左上の接続リストに表示され、次回以降の登録作業をスキップできます。)

接続をクリック

↓ 失敗例。(ADBを起動していませんでした)

image.png

↓ 成功時

image.png

↓ 保存をクリック

image.png

ワークシートが起動しますので、
サンプルクエリを実行してADBインスタンスに正しく接続できているか確認する

SQL Developerにてご自身で作成した接続を選択する

以下のクエリをワークシートに貼り付ける

SELECT USERNAME FROM USER_USERS;

↓ スクリプトの実行 ボタンをクリックし実行する(左隣の 文の実行 ボタンで実行しても構いません)
エラーなく実行結果が返ってくれば確認完了

image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?