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?

[Oracle Cloud] ADB に sqlplus で接続してみる

0
Last updated at Posted at 2026-05-07

はじめに

この記事は、Oracle Cloud(OCI) で提供されている Oracle Autonomous AI Database(ADB) に手元の PC[macbook] からインターネット経由で接続する手順をまとめています.
Autonomous や AI という言葉の意味は、ひとまず横に置いて、sqlplus から ADB に繋いで SQL を投げるまでの一連の流れを整理しました.

対象者

この記事は下記のような人を対象にしています.

  • Oracle DB は、オンプレミスで使っている.
  • Oracle Cloud の基本操作は、知っている.
  • Oracle DB を操作するときは、sqlplus を使いたい.

目次

  • ADB の作成
  • PC(macbook) への Oracle Client の install
  • sqlplus からの ADB への接続
  • おまけ:SQLcl からの ADB への接続
  • 余談
  • 参考記事・ドキュメント

ADB の作成

以下の操作は、OCI console から行います.
入力項目は、特に記載がない場合、デフォルトを使います.

  • OCI console の画面から、以下を選択.

    • Oracle AI Database → Autonomous AI Database
      image.png
  • Autonomous AI Database の作成.

    • "Autonomous AI Database の作成"ボタンをクリック.
      image.png
  • Autnomous AI Database Serverless の作成.

    • 表示名 とデータベース名に "aidb1" を指定.

    • ワークロード・タイプは、汎用的な"トランザクション処理"を選択.

    • データベース・バージョンは、最新の "26ai" を選択.
      image.png

    • ユーザー名 ADMIN のパスワードを設定.

      • ここでは "Welcome12345#" を指定.
    • ネットワーク・アクセス・タイプを”すべての場所からのセキュア・アクセス" を選択.
      image.png

    • 最後に"作成"ボタンを click
      image.png

  • 2,3 分ほど待つと DB が作成され、"使用可能"という表示になります.
    image.png

PC(macbook) への Oracle Client の install

PC[macbook]用の Instant Client のパッケージをインストールします.
ARM 用のパッケージをダウンロードした後、特定のディレクトリの下に展開します.

image.png
image.png

  • ダウンロードしたパッケージを展開.
    • ~/Downloads/instantclient_23_26 の下に展開される.
duke@mac Downloads % sh /Volumes/instantclient-basic-macos.arm64-23.26.1.0.0/install_ic.sh
/Users/duke/Downloads/instantclient_23_26
Creating dir: /Users/duke/Downloads/instantclient_23_26...
Copying /Volumes/instantclient-basic-macos.arm64-23.26.1.0.0 files ...
Using existing dir: /Users/duke/Downloads/instantclient_23_26...
Copying /Volumes/instantclient-sqlplus-macos.arm64-23.26.1.0.0 files ...
duke@mac Downloads % 
duke@mac Downloads % ls ~/Downloads/instantclient_23_26 
adrci				libclntshcore.dylib		libociei.dylib
BASIC_LICENSE			libclntshcore.dylib.12.1	libocijdbc23.dylib
BASIC_README			libclntshcore.dylib.18.1	libsqlplus.dylib
fips.dylib			libclntshcore.dylib.19.1	libsqlplusic.dylib
fips1403.dylib			libclntshcore.dylib.20.1	network
genezi				libclntshcore.dylib.21.1	ojdbc11.jar
glogin.sql			libclntshcore.dylib.22.1	ojdbc17.jar
instantclient_23_26		libclntshcore.dylib.23.1	ojdbc8.jar
legacy.dylib			libnnz.dylib			pkcs11.dylib
libclntsh.dylib			libocci.dylib			sqlplus
libclntsh.dylib.10.1		libocci.dylib.10.1		SQLPLUS_LICENSE
libclntsh.dylib.11.1		libocci.dylib.11.1		SQLPLUS_README
libclntsh.dylib.12.1		libocci.dylib.12.1		ucp.jar
libclntsh.dylib.18.1		libocci.dylib.18.1		ucp11.jar
libclntsh.dylib.19.1		libocci.dylib.19.1		ucp17.jar
libclntsh.dylib.20.1		libocci.dylib.20.1		uidrvci
libclntsh.dylib.21.1		libocci.dylib.21.1		xstreams.jar
libclntsh.dylib.22.1		libocci.dylib.22.1
libclntsh.dylib.23.1		libocci.dylib.23.1
duke@mac Downloads % 
duke@mac Downloads % 
duke@mac Downloads % sh /Volumes/instantclient-sqlplus-macos.arm64-23.26.1.0.0/install_ic.sh
/Users/duke/Downloads/instantclient_23_26
Using existing dir: /Users/duke/Downloads/instantclient_23_26...
Copying /Volumes/instantclient-basic-macos.arm64-23.26.1.0.0 files ...
Using existing dir: /Users/duke/Downloads/instantclient_23_26...
Copying /Volumes/instantclient-sqlplus-macos.arm64-23.26.1.0.0 files ...
duke@mac Downloads % 
duke@mac Downloads % ls ~/Downloads/instantclient_23_26 

adrci				libclntshcore.dylib		libociei.dylib
BASIC_LICENSE			libclntshcore.dylib.12.1	libocijdbc23.dylib
BASIC_README			libclntshcore.dylib.18.1	libsqlplus.dylib
fips.dylib			libclntshcore.dylib.19.1	libsqlplusic.dylib
fips1403.dylib			libclntshcore.dylib.20.1	network
genezi				libclntshcore.dylib.21.1	ojdbc11.jar
glogin.sql			libclntshcore.dylib.22.1	ojdbc17.jar
instantclient_23_26		libclntshcore.dylib.23.1	ojdbc8.jar
legacy.dylib			libnnz.dylib			pkcs11.dylib
libclntsh.dylib			libocci.dylib			sqlplus
libclntsh.dylib.10.1		libocci.dylib.10.1		SQLPLUS_LICENSE
libclntsh.dylib.11.1		libocci.dylib.11.1		SQLPLUS_README
libclntsh.dylib.12.1		libocci.dylib.12.1		ucp.jar
libclntsh.dylib.18.1		libocci.dylib.18.1		ucp11.jar
libclntsh.dylib.19.1		libocci.dylib.19.1		ucp17.jar
libclntsh.dylib.20.1		libocci.dylib.20.1		uidrvci
libclntsh.dylib.21.1		libocci.dylib.21.1		xstreams.jar
libclntsh.dylib.22.1		libocci.dylib.22.1
libclntsh.dylib.23.1		libocci.dylib.23.1
duke@mac Downloads % 

sqlplus からの ADB への接続

ADB のウォレットを先述の installclient の下にコピーします.

  • データベース接続を Click.
    image.png

  • ウォレットのダウンロードで"インスタンス・ウォレット"を選択し、”ウォレットのダウンロード"を click.
    image.png

  • ウォレットにパスワードを設定し、ダウンロード.

    • ディレクトリの下に Wallet_aidb1.zip が保存されます.

image.png

  • zip ファイルをinstantclient が install されているディレクトリの network/admin の下に保存.
duke@mac 
duke@mac ~ % cd Downloads 
duke@mac Downloads % ls -l Wallet_aidb1.zip 
-rw-r--r--@ 1 duke  staff  25332  4月 30 20:51 Wallet_aidb1.zip
duke@mac Downloads % cp Wallet_aidb1.zip instantclient_23_26/network/admin 
duke@mac Downloads % cd instantclient_23_26/network/admin
duke@mac admin % 
duke@mac admin % 
duke@mac % ls
README			Wallet_aidb1.zip
duke@mac admin % unzip Wallet_aidb1.zip 
Archive:  Wallet_aidb1.zip
  inflating: ewallet.pem             
replace README? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
  inflating: README                  
  inflating: cwallet.sso             
  inflating: tnsnames.ora            
  inflating: truststore.jks          
  inflating: ojdbc.properties        
  inflating: sqlnet.ora              
  inflating: ewallet.p12             
  inflating: keystore.jks            
duke@mac admin % ls
cwallet.sso		keystore.jks		sqlnet.ora		Wallet_aidb1.zip
ewallet.p12		ojdbc.properties	tnsnames.ora
ewallet.pem		README			truststore.jks
duke@mac % 
  • sqlnet.ora を編集し、WALLET_LOCATION を TNS_ADMIN で指定できるように修正.
    • TNS_ADMIN に zip ファイルを展開したディレクトリを指定.
    • ORACLE_HOME に instantclient のディレクトリを指定.
duke@mac admin % more sqlnet.ora 
WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY="?/network/admin")))
SSL_SERVER_DN_MATCH=yes
duke@mac admin % 
duke@mac admin % cp sqlnet.ora sqlnet.ora.orig
duke@mac admin % 
duke@mac admin % vi sqlnet.ora
duke@mac admin % 
duke@mac admin % more sqlnet.ora
WALLET_LOCATION = (SOURCE = (METHOD = file) (METHOD_DATA = (DIRECTORY=$TNS_ADMIN)))
SSL_SERVER_DN_MATCH=yes
duke@mac admin % 
duke@macc admin % pwd
/Users/duke/Downloads/instantclient_23_26/network/admin
duke@mac admin %   
duke@mac admin % export TNS_ADMIN=`pwd`
duke@mac admin % echo $TNS_ADMIN
/Users/duke/Downloads/instantclient_23_26/network/admin
duke@mac admin % 
duke@mac admin % export ORACLE_HOME=~/Downloads/instantclient_23_26
duke@mac admin % echo $ORACLE_HOME
/Users/duke/Downloads/instantclient_23_26
duke@mac admin % 
  • DB接続のサービス名は、ダウンロードされたウォレットの中にある tnsnames.ora に記載されているので、sqlplus で ADB に接続.
    • ひとまず、"aidb1_medium" に繋いでみます.
duke@mac admin % more tnsnames.ora 
aidb1_high = (description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=adb.us-ashburn-1.oraclecloud.com))(connect_data=(service_name=ny0r2a9a6yssvab_aidb1_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)))

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

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

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

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

duke@mac admin % 
duke@mac admin % $ORACLE_HOME/sqlplus admin/Welcome12345#@aidb1_medium

SQL*Plus: Release 23.26.1.0.0 - Production on Thu Apr 30 21:32:23 2026
Version 23.26.1.0.0

Copyright (c) 1982, 2026, Oracle.  All rights reserved.

Last Successful login time: Thu Apr 30 2026 21:23:37 +09:00

Connected to:
Oracle AI Database 26ai Enterprise Edition Release 23.26.2.1.0 - Production
Version 23.26.2.1.0

SQL> 
SQL> select * from v$version ;

BANNER
--------------------------------------------------------------------------------
BANNER_FULL
--------------------------------------------------------------------------------
BANNER_LEGACY
--------------------------------------------------------------------------------
    CON_ID
----------
Oracle AI Database 26ai Enterprise Edition Release 23.26.2.1.0 - Production
Oracle AI Database 26ai Enterprise Edition Release 23.26.2.1.0 - Production
Version 23.26.2.1.0
Oracle AI Database 26ai Enterprise Edition Release 23.26.2.1.0 - Production
	 0

BANNER
--------------------------------------------------------------------------------
BANNER_FULL
--------------------------------------------------------------------------------
BANNER_LEGACY
--------------------------------------------------------------------------------
    CON_ID
----------


SQL> 
SQL> show con_name

CON_NAME
------------------------------
NY0R2A9A6YSSVAB_AIDB1
SQL> 

以上、sqlplus で無事に接続できました.

なお、この環境を今後も使えるように環境変数のファイルを作っておきます.

duke@mac ~ % cat oracle_aidb_source 
#
# OCI の ADB(aidb1)へ接続するための環境変数
#
export TNS_ADMIN=/Users/duke/Downloads/instantclient_23_26/network/admin
export ORACLE_HOME=/Users/duke/Downloads/instantclient_23_26
export NLS_LANG=Japanese_Japan.AL32UTF8
export PATH=$PATH:$ORACLE_HOME

duke@mac ~ % 
duke@mac ~ % sqlplus admin/Welcome12345#@aidb1_low

SQL*Plus: Release 23.26.1.0.0 - Production on 木 4月 30 22:14:00 2026
Version 23.26.1.0.0

Copyright (c) 1982, 2026, Oracle.  All rights reserved.

最終正常ログイン時間: 木 4月  30 2026 22:13:35 +09:00


Oracle AI Database 26ai Enterprise Edition Release 23.26.2.1.0 - Production
Version 23.26.2.1.0
に接続されました。
SQL> 

おまけ:SQLcl からの ADB への接続

sqlplus の代替としてリリースされている SQLcl を使って ADB に接続します.
SQLcl 用のパッケージをダウンロードした後、特定のディレクトリの下に展開します.

duke@mac Downloads % 
duke@mac Downloads % pwd
/Users/duke/Downloads
duke@mac Downloads % ls -l sqlcl-26.1.0.086.1709.zip 
-rw-r--r--@ 1 duke  staff  120844321  5月  1 13:51 sqlcl-26.1.0.086.1709.zip
duke@mac Downloads % 
duke@mac Downloads % unzip sqlcl-26.1.0.086.1709.zip 
Archive:  sqlcl-26.1.0.086.1709.zip
   creating: sqlcl
   creating: sqlcl/bin
   creating: sqlcl/lib
...
  inflating: sqlcl/lib/xdb.jar       
  inflating: sqlcl/lib/quartz.jar    
  inflating: sqlcl/lib/oci-java-sdk-common.jar  
duke@mac Downloads % ls sqlcl*
sqlcl-26.1.0.086.1709.zip

sqlcl:
26.1.0.086.1709			lib				NOTICES.txt
bin				LICENSE.txt			THIRD-PARTY-LICENSES.txt
duke@mac Downloads % 
duke@mac Downloads % mv sqlcl instantclient_23_26/
duke@mac Downloads %
  • macbook での sqlcl は、java で動くため、java の 19 or 21 以上が必要.
  • ウォレットは、aidb1 の zip ファイルを指定する.
  • 環境変数と path を指定する.
  • sql コマンドを実行する.(参考: windows では、sql.exe)
duke@mac ~ % java -version
java version "24" 2025-03-18
Java(TM) SE Runtime Environment (build 24+36-3646)
Java HotSpot(TM) 64-Bit Server VM (build 24+36-3646, mixed mode, sharing)
duke@mac ~ %
duke@mac ~ %           
duke@mac ~ % cat oracle_aidb_source 
#
# OCI の AIDB(aidb1)へ接続するための環境変数
#
export TNS_ADMIN=/Users/duke/Downloads/instantclient_23_26/network/admin
export ORACLE_HOME=/Users/duke/Downloads/instantclient_23_26
export NLS_LANG=Japanese_Japan.AL32UTF8
#export PATH=$PATH:$ORACLE_HOME
export PATH=$PATH:$ORACLE_HOME:$ORACLE_HOME/sqlcl/bin

duke@mac ~ % 
duke@mac ~ % 
duke@mac ~ % source oracle_aidb_source 
duke@mac ~ % 
duke@mac ~ % sql /nolog

SQLcl: 金 5月 01 14:43:35 2026のリリース26.1 Production

Copyright (c) 1982, 2026, Oracle.  All rights reserved.

SQL> 
SQL> set cloudconfig /Users/duke/Downloads/instantclient_23_26/network/admin/Wallet_aidb1.zip
SQL> 
SQL> connect admin/Welcome12345#@aidb1_medium
接続しました.
SQL> 
SQL> select * from v$version;

BANNER                                                                         BANNER_FULL                                                                    BANNER_LEGACY                                                                     CON_ID 
______________________________________________________________________________ ______________________________________________________________________________ ______________________________________________________________________________ _________ 
Oracle AI Database 26ai Enterprise Edition Release 23.26.2.1.0 - Production    Oracle AI Database 26ai Enterprise Edition Release 23.26.2.1.0 - Production    Oracle AI Database 26ai Enterprise Edition Release 23.26.2.1.0 - Production            0 
                                                                               Version 23.26.2.1.0                                                                                                                                  SQL>                   
SQL> show con_name

CON_NAME
------------------------------
NY0R2A9A6YSSVAB_AIDB1
SQL> 
SQL> exit
Oracle AI Database 26ai Enterprise Edition Release 23.26.2.1.0 - Production
Version 23.26.2.1.0から切断されました
duke@mac ~ % 

以上、SQLcl で無事に接続できました.

余談

私は、Oracle 8i からのユーザですが、GUI や WebUI は、操作が覚えられないため(老化?)、sqlplus でつながると安心します.

参考記事・ドキュメント

以上

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?