D SQL*Plus Instant Client
SQL*Plus Instant Clientは、SQL*Plusのコマンドラインのすべての機能を備えたスタンドアロン製品です。既存のRemote Oracle Databaseに接続しますが、独自のデータベースはありません。簡単にインストールでき、SQL*Plusコマンドラインの使用に必要なOracle Database Clientの完全なインストールと比較すると、非常に少ないディスク領域を使用します。
SQL*Plus Instant Clientは、OCI Instant Clientがサポートされているプラットフォームで使用できます。OCI Instant Clientの詳細は、「About OCI Instant Clientについて」を参照してください。
SQL*Plus Instant Clientをインストールするには、次の2つのパッケージが必要です。
-
SQL*Plus Instant Clientパッケージ
-
基本OCI Instant Clientパッケージまたは軽量OCI Instant Clientパッケージ
D.1 インストールするSQL*Plus Instant Clientの選択について
SQL*Plus Instant Clientは、次の2つの方法でインストールできます。
SQL*PlusおよびOCIのパッケージの両方が、Oracle Databaseの同じバージョンからである必要があります。
D.1.2 軽量Instant Client
量OCIパッケージを使用するSQL*Plus Instant Clientは、英語でのみエラー・メッセージを表示し、特定の文字セットのみをサポートしています。基本OCIパッケージを使用するSQL*Plus Instant Clientより大幅に小さくなります。
軽量Instant ClientでのNLS_LANGのパラメータに有効な値は、次のとおりです。
-
languageは、Oracle Databaseでサポートされている任意の有効な言語にできます。ただし、エラー・メッセージは英語でのみ報告されます。
-
territoryは、Oracle Databaseでサポートされている任意の有効な地域にできます。
-
charsetは、次の文字セットのいずれかにします。
-
US7ASCII
-
WE8DEC
-
WE8MSWIN1252
-
WE8ISO8859P1
-
UTF8
-
AL16UTF16
-
AL32UTF8
-
たとえば:
NLS_LANG=AMERICAN_AMERICA.UTF8
NLS設定の詳細は、「グローバリゼーションのサポート環境の設定」および「環境変数NLS_LANG」を参照してください。
D.2 SQL*Plus Instant Clientに必要なファイルのリスト
この項では、基本パッケージと軽量パッケージの両方のSQL*Plus Instant Clientのインストールに必要なファイルを示します。
OCIパッケージ(基本または軽量)のいずれかのファイルのみが必要です。インストールされるその他のファイルで、この項のリストに含まれていないファイルは無視するか、ディスク領域を節約するために削除できます。
表D-1 SQL*Plusパッケージ内のInstant Clientファイル
| LinuxおよびUNIX | Windows | 説明 |
|---|---|---|
|
sqlplus |
sqlplus.exe |
SQL*Plus実行可能ファイル |
|
libsqlplus.so |
該当なし |
SQL*Plusライブラリ |
|
libsqlplusic.so |
orasqlplusic21.dll |
SQL*Plusデータ共有ライブラリ |
表D-2 基本OCIパッケージ内のInstant Clientファイル
| LinuxおよびUNIX | Windows | 説明 |
|---|---|---|
|
libclntsh.so.21.1 |
oci.dll |
クライアント・コード・ライブラリ |
|
libclntshcore.so |
該当なし |
OCI Instant Clientデータ共有ライブラリ |
|
libociei.so |
oraociei21.dll |
OCI Instant Clientデータ共有ライブラリ |
|
libnnz21.so |
orannzsbb21.dll |
セキュリティ・ライブラリ |
|
libons.so |
oraons.dll |
ONSライブラリ |
表D-3 軽量OCIパッケージ内のInstant Clientファイル
| LinuxおよびUNIX | Windows | 説明 |
|---|---|---|
|
libclntsh.so.21.1 |
oci.dll |
クライアント・コード・ライブラリ |
|
libociicus.so |
oraociicus21.dll |
OCI Instant Clientデータ共有ライブラリ(英語のみ) |
|
libnnz21.so |
orannzsbb21.dll |
セキュリティ・ライブラリ |
D.3 OTNからのインストール・ファイルのダウンロードによるSQL*Plus Instant Clientのインストール
この項では、Linux用のOTN RPMパッケージとUNIXおよびWindows用のOTNダウンロード可能なzipファイルからSQL*Plus Instant Clientをインストールする方法について説明します。
SQL*Plus Instant Clientパッケージは、ORACLE_HOMEにインストールしないでください。
- SQL*Plus Instant Clientパッケージを含むRPMパッケージおよびOCIパッケージをOTN Instant Clientページからダウンロードします。パッケージはいずれも、同じバージョンである必要があります。
- RPMパッケージを初期インストールするには
rpm -iコマンドを使用し、新しいバージョンのパッケージにアップグレードするにはrpm -uコマンドを使用します。 - SQL*Plus Instant Clientを構成します。
- SQL*Plus Instant Clientパッケージを含むzipファイルおよびOCIパッケージをOTN Instant Clientページからダウンロードします。パッケージはいずれも、同じバージョンである必要があります。
- 新規ディレクトリ(UNIXでは/
/home/instantclient20_2、Windowsではc:\instantclient20_2など)を作成します。 - 2つのパッケージを新規ディレクトリに解凍します。
- SQL*Plus Instant Clientを構成します。
D.4 21c Clientリリース・メディアからのSQL*Plus Instant Clientのインストール
この項では、Unix、LinuxおよびWindowsにSQL*Plus Instant Clientをインストールする方法について説明します。
- Oracle Database 21c Clientリリース・メディアでインストーラを実行し、管理者オプションを選択します。
- 新規ディレクトリ(UNIXおよびLinuxでは
/home/instantclient_21_1、Windowsではc:\instantclient_21_1など)を作成します。 - SQL*Plus Instant ClientおよびOCI Instant Clientファイルを新規ディレクトリにコピーします。すべてのファイルを同じ
ORACLE_HOMEからコピーする必要があります。 - SQL*Plus Instant Clientを構成します。
D.5 SQL*Plus Instant Clientの構成
SQL*Plus Instant Client実行可能ファイルは、一致するバージョンのOCI Instant Clientとのみ使用する必要があります。
ノート:
ORACLE_HOMEまたはORACLE_SID環境変数を設定する必要はありません。
ノート:
ORACLE_HOMEまたはORACLE_SID環境変数を設定する必要はありません。
/usrファイル・システム内のOracle固有のサブディレクトリにRPMをダウンロードする必要があります。サブディレクトリ構造によって、複数のバージョンのInstant Clientを使用できます。
ノート:
ORACLE_HOMEまたはORACLE_SID環境変数を設定する必要はありません。
- Instant Clientライブラリを含むディレクトリの名前を
LD_LIBRARY_PATHに追加します。その他のOracleディレクトリは削除します。ノート:
ORACLE_HOMEまたはORACLE_SID環境変数を設定する必要はありません。たとえば、次のコマンドを使用して、BourneシェルまたはKornシェルのSolarisで
LD_LIBRARY_PATHを設定します。LD_LIBRARY_PATH=/usr/lib/oracle/21.1/client/lib:${LD_LIBRARY_PATH} export LD_LIBRARY_PATH - RPMからインストールしたsqlplus実行可能ファイルが
PATHの最初のエントリであることを確認します。テストするために、which sqlplusコマンドを入力します。これにより、/usr/bin/sqlplusが戻されます。この出力が表示されない場合は、他のOracleディレクトリをPATHから削除するか、PATHに存在する他のSQL*Plus実行可能ファイルの前に/usr/binを挿入するか、絶対パスまたは相対パスを使用してSQL*Plusを起動します。たとえば、次のコマンドを使用して、bashシェルで
PATHを設定します。PATH=/usr/bin:${PATH} export PATH複数のバージョンのSQL*Plusをインストールする場合は、シンボリック・リンク/usr/bin/sqlplusを、
LD_LIBRARY_PATH内のライブラリと一致するSQL*Plusのバージョンに変更する必要があります。リリース21.1の場合、/usr/bin/sqlplusは、/usr/lib/oracle/21.1/client/bin/sqlplusにあるSQL*Plusバイナリのシンボリック・リンクです。 - ロケールに必要なOracleグローバリゼーション変数を設定します。変数を設定しない場合は、デフォルトのロケールが指定されたものとみなされます。詳細は、「ロケール・データ 」を参照してください。
たとえば:
NLS_LANG=AMERICAN_AMERICA.UTF8 export NLS_LANG
- Instant Clientファイルを含むディレクトリの名前を、適切な共有ライブラリ・パス
LD_LIBRARY_PATH、LIBPATHまたはSHLIB_PATHに追加します。その他のOracleディレクトリは削除します。たとえば、BourneシェルまたはKornシェルのSolarisで次のコマンドを使用します。
LD_LIBRARY_PATH=/home/instantclient_21_1:${LD_LIBRARY_PATH} export LD_LIBRARY_PATH - Instant Clientファイルを含むディレクトリを環境変数
PATHに追加します。設定されていない場合は、絶対パスまたは相対パスを使用してSQL*Plusを起動する必要があります。その他のOracleディレクトリはPATHから削除します。たとえば:PATH=/home/instantclient_21_1:${PATH} export PATH - ロケールに必要なOracleグローバリゼーション変数を設定します。変数を設定しない場合は、デフォルトのロケールが指定されたものとみなされます。詳細は、「ロケール・データ 」を参照してください。たとえば:
NLS_LANG=AMERICAN_AMERICA.UTF8 export NLS_LANG
セッションの環境は、Windowsコマンド・プロンプトでSETコマンドを使用して構成するか、システム・プロパティで環境変数を設定してグローバルに構成します。たとえば、Windows 2000でシステム・プロパティを使用して環境変数を設定するには、「コントロール パネル」から「システム」を開き、「詳細設定」タブをクリックしてから、「環境変数」をクリックします。
次のステップを実行します。
- Instant Clientファイルを含むディレクトリをシステム環境変数
PATHに追加します。その他のOracleディレクトリはPATHから削除します。たとえば、PATHの先頭にc:\instantclient20_2を追加します。 - ロケールに必要なOracleグローバリゼーション変数を設定します。変数を設定しない場合は、デフォルトのロケールが指定されたものとみなされます。詳細は、「ロケール・データ 」を参照してください。たとえば、日本語環境用の
NLS_LANGを設定するには、JAPANESE_JAPAN.JA16EUCに設定されたユーザー環境変数NLS_LANGを作成します。軽量Instant Clientをインストールした場合、サポートされている
NLS_LANG設定の詳細は、軽量Instant Clientを参照してください。
D.6 SQL*Plus Instant Clientによるデータベースへの接続について
SQL*Plus Instant Clientは、すべてのデータベース・サーバーから常にリモートの状態になります。データベースに接続するには、Oracle Net接続識別子を使用して、データベースを指定する必要があります。
簡単な接続識別子を使用して、mymachineで実行されているMYDBデータベース内のHRスキーマに接続する例は、次のとおりです。
sqlplus hr/your_password@\"//mymachine.mydomain:port/MYDB\"
また、ネット・サービス名も使用できます。
sqlplus hr/your_password@MYDBネット・サービス名は、LDAPなどの様々な場所に格納できます。Oracle Database 21cの新機能を利用するには、LDAPを使用することをお薦めします。詳細は、「tnsnames.oraファイルのローカル・ネーミング・パラメータ 」を参照してください。
ローカルのOracle Net tnsnames.oraファイル内に構成されたネット・サービス名を使用する場合は、tnsnames.oraファイルが格納されているディレクトリに環境変数TNS_ADMINを設定します。たとえば、UNIXで、tnsnames.oraファイルが/home/user1内にあり、そのファイルにネット・サービス名MYDB2が定義されている場合は、次のコマンドを使用します。
TNS_ADMIN=/home/user1 export TNS_ADMIN sqlplus hr@MYDB2
TNS_ADMINが設定されていない場合は、オペレーティング・システム依存のディレクトリ・セットを調べてtnsnames.oraを見つけます。この検索パスには、network/admin/tnsnames.oraのORACLE_HOME環境変数によって指定されているディレクトリの検索も含まれます。環境変数ORACLE_HOMEは、このためにのみ、SQL*Plus Instant Clientに設定します。Instant Clientアプリケーションの実行時にORACLE_HOMEを設定する場合は、既存のディレクトリに設定する必要があります。
この例は、環境変数ORACLE_HOMEが設定されていて、$ORACLE_HOME/network/admin/tnsnames.oraまたはORACLE_HOME\network\admin\tnsnames.oraファイルによってネット・サービス名MYDB3が定義されていることを前提としています。
sqlplus hr@MYDB3
環境変数TWO_TASK (UNIXの場合)またはLOCAL (Windowsの場合)には接続識別子を設定できます。これによって、SQL*PlusまたはSQL*Plus Instant Clientで接続が行われるたびに接続識別子を明示的に入力する必要がなくなります。このUNIXの例では、MYDB4という名前のデータベースに接続します。
TNS_ADMIN=/home/user1 export TNS_ADMIN TWO_TASK=MYDB4 export TWO_TASK sqlplus hr
Windowsでは、システム・プロパティで、TNS_ADMIN変数とLOCAL変数を設定できます。
D.7 SQL*Plus Instant ClientによるAS SYSDBAまたはAS SYSOPER接続
AS SYSDBAまたはAS SYSOPERで接続してDBAタスクを実行するには、orapwdユーティリティを使用して、データベース・サーバーにOracleパスワード・ファイルを設定する必要があります。
ユーティリティを構成すると、SQL*Plus Instant Clientの接続文字列は次のようになります。
sqlplus sys@MYDB AS SYSDBA
Oracleパスワード・ファイルの詳細は、「パスワード・ファイル認証の使用 」を参照してください。