2 Oracle Instant ClientおよびOracle Instant Client Light

この章のトピックは、次のとおりです:

2.1 Oracle Instant Clientについて

Oracle Instant Clientでは、OCI、OCCI、ODBCおよびJDBC OCIアプリケーションを作成および実行するために必要なOracle Databaseのクライアント側ファイルが提供されます。SQL*Plus、SQL*Loader、Oracle Data Pumpなどの便利なコマンドライン・ユーティリティも用意されています。Oracle Instant Clientでは、クライアント・マシン上のOracleホームの必要性をなくすことで、アプリケーションのデプロイメントを単純化します。

Instant Clientモードで実行されるOCIアプリケーションの記憶領域の所要量は、クライアント側の完全インストールで実行される同じアプリケーションに比べて、大幅に少なくなります。Instant Client共有ライブラリの最小インストールは、完全なクライアント側インストールで占める領域の10%未満を占有します。Instant Clientは、インストールも簡単です。

Instant Clientを使用するのはなぜか。

  • インストールには、いくつかのファイルの解凍またはRPMパッケージのインストールが必要です。

  • 必要なファイルの数および合計ディスク領域が大幅に少なくなります。

  • Instant Clientを使用してデプロイされたアプリケーションでは、機能またはパフォーマンスに損失がありません。

  • 独立したソフトウェア・ベンダーは、アプリケーションを簡単にパッケージ化できます。

READMEは、Instant Clientインストールに付属しています。このファイルには、Instant Clientが生成されたバージョン、日時およびオペレーティング・システムが記載されています。

OCIアプリケーションは、デフォルトで、ランタイム・ライブラリ検索パス(たとえば、LinuxではLD_LIBRARY_PATH、WindowsではPATH)内でOCIデータ共有ライブラリlibociei.so (WindowsではOraociei19.dll)を検索し、アプリケーションがInstant Clientモードで動作するかどうかを判断します。このライブラリが見つからない場合、OCIではInstant Client Lightデータ共有ライブラリ(表2-3および表2-4を参照) libociicus.so (WindowsではOraociicus19.dll)のロードを試みます。Instant Client Lightのライブラリが見つかった場合、アプリケーションはInstant Client Lightモードで動作します。それ以外の場合は、Oracleホームでの完全インストールが想定されます。

Instant Clientについて、次の表に、Linux、UNIXおよびMicrosoft Windows用のOCIアプリケーションのデプロイに必要なOracle Databaseクライアント側ファイルを示します。他のライブラリとユーティリティがインストールされますが、OCIランタイムの使用には必要ありません。たとえば、jdbc.jarなどのファイルを削除できます。

表2-1 LinuxおよびUNIX用のInstant Client共有ライブラリ

LinuxおよびUNIX LinuxおよびUNIXでの説明

libclntsh.so.19.1

libclntshcore.so.19.1

クライアント・コード・ライブラリ

libociei.so脚注 1

OCI Instant Clientデータの共有ライブラリ

libnnz19.so

セキュリティ・ライブラリ

libons.so

Oracle Notification Service (ONS)ライプラリ

libmql1.so

軽量IPCライブラリ

libipc1.so

メッセージ・キュー軽量ライブラリ

脚注 1

ライブラリはInstant Clientを使用するために同じディレクトリに存在する必要があります。

表2-2 Microsoft Windows用のInstant Client共有ライブラリ

Microsoft Windows Microsoft Windowsでの説明

oci.dll

アプリケーションがリンクする転送機能

oraociei19.dll

データとコード

orannzsbb19.dll

セキュリティ・ライブラリ

oraons.dll

OCIによって内部的に使用されるONSライブラリ

oci.sym

oraociei19.sym

orannzsbb19.sym

シンボル表

Microsoft Windowsでは、ダイナミック・リンク・ライブラリ(DLL)ごとに.symファイルが提供されます。.symファイルがDLLと同じ場所にある場合、Microsoft WindowsでOCIに障害が発生した際に、関数名を含むスタック・トレースが生成されます。

一般的に、Instant Clientがクライアント側の動作専用でないかぎり、Instant Clientを使用して実行されているアプリケーションではすべてのOCI機能を使用できます。したがって、サーバー側の外部プロシージャは、Instant Clientライブラリを使用できません。

開発には、Instant Client SDKを使用することもできます。

2.2 ZIPファイルから、RPMから、およびOracle Universal Installerからのインストール

Oracle Instant Clientは、いくつかの方法でインストールできます。

Instant Clientライブラリは、Oracle Universal InstallerからInstant Clientオプションを選択するか、Oracle Technology NetworkのWebサイトOracle Instant ClientのOCIページからZIPファイルまたはRPMのどちらかをダウンロードしてインストールするかのいずれかでインストールできます。

次の項では、Oracle Technology NetworkのWebサイトからInstant Clientライブラリをダウンロードおよびインストールする様々な方法について説明します。

2.2.1 ZIPファイルからのインストール

この項では、ZIPファイルからInstant Clientをインストールする方法について説明します。

  1. 目的のInstant Client ZIPファイルをダウンロードします。すべてのインストールで、基本パッケージまたは基本軽量パッケージが必要です。
  2. 次のコマンドを実行して、アプリケーションがアクセスできる/opt/oracle/instantclient_19_3などの単一ディレクトリにパッケージを解凍します。
    cd /opt/oracle			
      unzip instantclient-basic-linux.x64-19.3.0.0.0dbru.zip
    
  3. 18.3より前のバージョンで次のコマンドを実行し、Instant Clientのバージョンの適切なリンクを作成します。
    cd /opt/oracle/instantclient_12_2
      ln -s libclntsh.so.12.1 libclntsh.so
      ln -s libocci.so.12.1 libocci.so
    
  4. libaioパッケージをインストールします。これは、一部のLinuxディストリビューションではlibaio1と呼ばれます。
    たとえば、Oracle Linuxでは次のコマンドを実行します。
    sudo yum install libaio
    
  5. Instant Clientがこのシステムにインストールされている唯一のOracleソフトウェアである場合は、次のコマンドを実行してランタイム・リンク・パスを更新します。
    sudo sh -c "echo /opt/oracle/instantclient_19_3 >/etc/ld.so.conf.d/oracle-instantclient.conf"
      sudo ldconfig
    

    または、次のコマンドを実行して、アプリケーションを実行する前にLD_LIBRARY_PATH環境変数を設定します。

    export LD_LIBRARY_PATH=/opt/oracle/instantclient_19_3:$LD_LIBRARY_PATH
    

    変数は、オプションで~/.bash_profileなどの構成ファイルおよび/etc/sysconfig/httpdなどのアプリケーション構成ファイルに追加できます。

  6. tnsnames.orasqlnet.oraldap.oraまたはoraaccess.xmlなどのオプションのOracle構成ファイルをInstant Clientと同じ場所に配置するには、それらをnetwork/adminサブディレクトリに配置します。12.2以前のバージョンの場合には、次のコマンドを使用してこれを作成する必要があります。
    mkdir -p /opt/oracle/instantclient_12_2/network/admin
    

    これは、Instant ClientにリンクされたアプリケーションのデフォルトのOracle構成ディレクトリです。

    または、Oracle構成ファイルをアクセス可能な別のディレクトリに配置し、環境変数TNS_ADMINをそのディレクトリ名に設定することもできます。

  7. SQL*Plusパッケージのsqlplusなどのバイナリを使用するには、パッケージを基本パッケージと同じディレクトリに解凍し、PATH環境変数を次のように更新します。
    export PATH=/opt/oracle/instantclient_19_3:$PATH
    
  8. アプリケーションを起動します。

2.2.2 RPMファイルからのインストール

この項では、RPMファイルからInstant Clientをインストールする方法について説明します。

  1. 目的のInstant Client RPMファイルをダウンロードします。すべてのインストールで、基本パッケージまたは基本軽量パッケージが必要です。
  2. 次のコマンドを実行して、yumを使用してパッケージをインストールします。
    sudo yum install oracle-instantclient19.3-basic-19.3.0.0.0-1.x86_64.rpm

    ノート:

    バージョン19.3以降、デフォルトでは一度に1つのバージョンのInstant Client RPMライブラリのみをインストールできます。

  3. 19より前のバージョンでは、Instant Clientがシステムにインストールされている唯一のOracleソフトウェアである場合、次のコマンドを実行してランタイム・リンク・パスを更新します。
    sudo sh -c "echo /usr/lib/oracle/18.3/client64/lib >/etc/ld.so.conf.d/oracle-instantclient.conf"
      sudo ldconfig

    ノート:

    Instant Client 19.3 RPMパッケージでは、これらのコマンドは自動的に実行されます。

    または、次のコマンドを実行して、アプリケーションを実行する前にLD_LIBRARY_PATH環境変数を設定します。

    export LD_LIBRARY_PATH=/opt/oracle/instantclient_19_3:$LD_LIBRARY_PATH
    

    変数は、オプションで~/.bash_profileなどの構成ファイルおよび/etc/sysconfig/httpdなどのアプリケーション構成ファイルに追加できます。

  4. tnsnames.orasqlnet.oraldap.oraまたはoraaccess.xmlなどのオプションのOracle構成ファイルをInstant Clientと同じ場所に配置するには、それらをnetwork/adminサブディレクトリに配置します。12.2以前のバージョンの場合には、次のコマンドを使用してこれを作成する必要があります。
    sudo mkdir -p /usr/lib/oracle/12.2/client64/lib/network/admin
    

    これは、Instant ClientにリンクされたアプリケーションのデフォルトのOracle構成ディレクトリです。

    または、Oracle構成ファイルをアクセス可能な別のディレクトリに配置し、環境変数TNS_ADMINをそのディレクトリ名に設定することもできます。

  5. バイナリ・ツール・パッケージを使用するには、yumを使用して基本パッケージと同じディレクトリにパッケージをインストールし、次のようにPATH環境変数を更新します。
    export PATH=/opt/oracle/instantclient_19_3:$PATH
    
  6. アプリケーションを起動します。

2.2.3 Oracle Universal Installerからのインストール

この項では、Oracle Universal InstallerからOracle Instant Clientをインストールする方法について説明します。

Oracle Universal InstallerからInstant Clientをインストールするには、Oracle Universal Installerを起動し、Instant Clientオプションを選択し、Oracle Databaseリリース19c、バージョン19.3.の場合はinstantclient_19_3などの空のディレクトリにInstant Client共有ライブラリをインストールします。

環境変数の設定の詳細は、ZIPファイルからのインストールのステップ5と6を参照してください。

完全なクライアント・インストールを行った場合(Oracle Universal InstallerでAdminオプションを選択)、完全なクライアント・インストール環境内のInstant Client共有ライブラリの場所は次のようになります。

LinuxまたはUNIXの場合:

libociei.soライブラリは、$ORACLE_HOME/instantclientにあります。

libclntsh.so.19.1libclntshcore.so.19.1およびlibnnz19.soは、$ORACLE_HOME/libにあります

Windowsの場合:

oraociei19.dllライブラリは、ORACLE_HOME\instantclientにあります

oci.dllociw32.dllおよびorannzsbb19.dllは、ORACLE_HOME\binにあります

Instant Clientを使用してOCIアプリケーションを実行できるようするには、前述のライブラリを別のディレクトリにコピーして、オペレーティング・システム共有ライブラリ・パスをこのディレクトリがある場所に設定します。

ノート:

すべてのライブラリを同じOracleホームからコピーして、同じディレクトリに配置する必要があります。Instant Clientライブラリへのsymlinkの関連付けは、ライブラリの物理的な関連付けに代わるものではありません。

オペレーティング・システムのLibrary Path変数に存在するOracleライブラリは1セットのみである必要があります。つまり、Instant Clientライブラリを含むディレクトリが複数ある場合、それらのディレクトリの1つのみをオペレーティング・システムのLibrary Path上に記載する必要があります。

同様に、Oracleホームベースのインストールを同じシステムに行う場合、オペレーティング・システムのLibrary PathにORACLE_HOME/libとInstant Clientディレクトリの両方を記載しないでください(Library Path上での順序も無関係です)。つまり、オペレーティング・システムのLibrary Path変数には、ORACLE_HOME/libディレクトリ(非Instant Clientモードで操作する場合)またはInstant Clientディレクトリ(Instant Clientモードで操作する場合)のいずれかを記載します。

OCCIやJDBC OCIなどのその他の機能を有効にするには、いくつかの追加ファイルをコピーする必要があります。OCCIを有効にするには、OCCIライブラリ(LinuxまたはUNIXではlibocci.so.19.1、Windowsではoraocci19.dll)をInstant Clientディレクトリにインストールする必要があります。JDBC OCIドライバの場合、3つのOCI共有ライブラリの他に、OCI JDBCライブラリ(LinuxまたはUNIXではlibocijdbc19.so、Windowsではocijdbc19.dllなど)もダウンロードする必要があります。すべてのライブラリをInstant Clientディレクトリに配置します。

ノート:

Sparc64などのハイブリッド・プラットフォームでは、JDBC OCIドライバをInstant Clientモードで動作させるために、libociei.soライブラリをORACLE_HOME/instantclient32ディレクトリからInstant Clientディレクトリにコピーします。JDBC OCI Instant Clientに必要なその他すべてのSparc64ライブラリを、ORACLE_HOME/lib32ディレクトリからInstant Clientディレクトリにコピーします。

2.3 Oracle Instant Clientの環境変数

ORACLE_HOME環境変数は、NLS、COREおよびエラー・メッセージ・ファイルの場所を決定しなくなりました。

OCI専用アプリケーションでは、ORACLE_HOMEを設定しないでください。ただし、設定されていても、OCIには影響はありません。OCIは、データ共有ライブラリからデータを常に取得します。データ共有ライブラリを使用できない場合のみORACLE_HOMEが使用され、完全なクライアント・インストールが前提となります。ORACLE_HOMEを設定する必要がなくても、設定する場合には、ディレクトリを識別する有効なオペレーティング・システム・パス名に設定する必要があります。

動的ユーザー・コールバック・ライブラリをロードする場合は、このマニュアルで指定されているように、ORACLE_HOME/lib (WindowsではORACLE_HOME\bin)にコールバック・パッケージが存在する必要があります。この場合、ORACLE_HOMEを設定します。

Instant Clientモードでは、環境変数ORA_NLS10およびORA_NLS_PROFILE33は無視されます。

Oracle Database 12cリリース2 (12.2)以上では、Instant Clientライブラリを使用する場合、Instant Clientは、ORA_TZFILE環境変数を使用して、ファイル・システムからタイム・ゾーン・ファイルを読み取ります(この環境変数が設定されている場合)。それ以外で、ORA_TZFILE変数が設定されていない場合、データ共有ライブラリから、サイズの大きいデフォルトのtimezlrg_n.datファイルが使用されます。サイズの小さいtimezone_n.datファイルをデータ共有ライブラリから使用する場合は、絶対または相対パス名を付けずに、このファイルの名前をORA_TZFILE環境変数に設定します。ファイルは、Instant Clientディレクトリのサブディレクトリoracore/zoneinfo (UNIX/LINUXの場合)またはoracore\zoneinfo (Microsoft Windowsの場合)にコピーする必要があります。geneziユーティリティを-vオプション付きで使用して、タイム・ゾーン・ファイルおよび場所が有効であることを確認するか、SQL*Plusを実行します。

LinuxまたはUNIXの場合:

export ORA_TZFILE=timezone_n.dat

Windowsの場合:

set ORA_TZFILE=timezone_n.dat

これらの場合、nはタイムゾーン・データ・ファイルのバージョン番号です。

oracoeiまたはoraociicus DLLが存在する場所(通常はinstantclient_12_2ディレクトリ)に必ずサブディレクトリoracore/zoneinfo (UNIX/LINUXの場合)またはサブディレクトリoracore\zoneinfo (Microsoft Windowsの場合)を作成し、そのディレクトリにtimezone_n.datファイルをコピーします。

Instant Clientデータ共有ライブラリにパッケージされている大小のタイム・ゾーン・ファイルのバージョンを特定するには、次のコマンドを入力して、geneziユーティリティを実行します。

genezi -v

(データ共有ライブラリが使用できないために) OCIがInstant Clientモードで動作していない場合、以前のOracle Databaseのリリースと同様に、ORA_TZFILE変数(設定されている場合)は、完全なパス名を付けます。

TNSNAMESローカル・ネーミング・パラメータが使用されている場合は、前述したように、TNS_ADMINディレクトリにはTNSNAMES構成ファイルを含める必要があります。TNS_ADMINが設定されていない場合は、ORACLE_HOME/network/adminディレクトリにOracle Net Services構成ファイルを含める必要があります。

2.4 Oracle Instant Clientのデータベース接続文字列

tnsnames.orasqlnet.oraoraaccess.xmlなどの構成ファイルを指定するためにORACLE_BASE_HOMEまたはORACLE_HOMEを使用する必要のないOracle Netネーミング・メソッドは、すべてInstant Clientモードで動作します。

network/adminを使用して、tnsnames.orasqlnet.oraldap.oraまたはoraaccess.xmlなどのオプションのOracle構成ファイルをInstant Clientと同じ場所に配置できます。18.1より前のリリースでは、network/adminディレクトリを手動で作成する必要がありました。

データベース接続文字列の詳細は、「データベース接続文字列」を参照してください。

関連項目:

接続記述子の詳細は、『Oracle Database Net Services管理者ガイド』の「ネーミング・メソッドの構成」を参照してください

この項には次のトピックが含まれます: Oracle Database接続文字列の接続識別子の例

2.5 Oracle Instant Client用のSDK

ソフトウェア開発キット(SDK)は、アプリケーションを作成できる開発ツールのセットで、次のOracle Technology Network WebサイトのInstant ClientのリンクURLからダウンロードできます。

Oracle Instant Client

  • Instant Client SDKパッケージには、CおよびC++のヘッダー・ファイルと、Instant Client環境でOCIおよびOCCIアプリケーションを開発するためのMakefileが含まれています。開発したアプリケーションは、あらゆるクライアント環境にデプロイできます。

  • SDKには、CおよびC++のデモ・プログラムが含まれています。

  • Windowsの場合、OCIまたはOCCIアプリケーションをリンクするために必要なライブラリも含まれています。デモをビルドするための、Make.batが提供されています。

  • UNIXまたはLinuxの場合、デモをビルドするにはmakefile demo.mkを指定します。アプリケーションをリンクする前に、instantclient_19ディレクトリがランタイム・ライブラリ検索パス(たとえば、LD_LIBRARY_PATH)に存在する必要があります。OCIおよびOCCIプログラムでは、instantclient_19ディレクトリにlibclntsh.soおよびlibocci.soシンボリック・リンクを配置する必要があります。Oracle Database18c、バージョン18.1以上では、Linux、UNIX、およびmacOSのInstant Client の基本および基本軽量のzipファイルでlibclntshlibocciのシンボリック・リンクが事前作成されるようになりました。

  • また、SDKには、アプリケーション・ヘッダー・ファイルを生成するための、Object Type Translator (OTT)ユーティリティとそのクラスが含まれます。

2.6 Oracle Instant Client Lightについて

Instant ClientのInstant Client Lightバージョンでは、クライアントのインストールに必要なディスク領域が削減されています。

英語以外の言語のエラー・メッセージ・ファイルを削除し、サポートされる文字セット定義を約250の中からわずかな数のみ残すことで、ライブラリのサイズが削減されました。

このInstant Client Lightバージョンは、US7ASCII、WE8DEC、WE8ISO8859P1、WE8MSWIN1252またはUnicode文字セットのいずれかを使用するアプリケーション向けです。NLS_LANG設定のLANGUAGEおよびTERRITORYフィールドに制限がないため、Instant Client Lightはあらゆる言語および地域設定で動作します。Instant Client Lightでは英語のエラー・メッセージのみ提供されているため、NLS_LANGAMERICAN以外の言語に設定されている場合でも、Net接続エラーなどのクライアント側で生成されたエラー・メッセージは常に英語でレポートされます。データベース・インスタンスのOracleホームに適切な翻訳済メッセージ・ファイルがインストールされている場合、SQL文の構文エラーなどのデータベース側で生成されたエラー・メッセージは、選択した言語となります。

2.6.1 グローバリゼーション設定

Instant Client Lightは、次のクライアント文字セットをサポートします。

シングルバイト

  • US7ASCII

  • WE8DEC

  • WE8MSWIN1252

  • WE8ISO8859P1

Unicode

  • UTF8

  • AL16UTF16

  • AL32UTF8

Instant Client Lightは、次のいずれかのデータベース文字セットを使用するデータベースに接続できます。

  • US7ASCII

  • WE8DEC

  • WE8MSWIN1252

  • WE8ISO8859P1

  • WE8EBCDIC37C

  • WE8EBCDIC1047

  • UTF8

  • AL32UTF8

Instant Client Lightは、前述のリストにない文字セットがクライアントまたはデータベースの文字セットとして使用された場合に、エラーを戻します。

Instant Client Lightは、OCI_UTF16モードで作成されたOCI環境ハンドルを使用しても動作できます。

関連項目:

各国語サポート(NLS)の設定の詳細は、『Oracle Databaseグローバリゼーション・サポート・ガイド』を参照してください

2.6.2 Oracle Instant Client Lightのライブラリ

OCIアプリケーションは、デフォルトで、ランタイム・ライブラリ検索パス(たとえば、LinuxではLD_LIBRARY_PATH、WindowsではPATH)内でOCIデータ共有ライブラリlibociei.so (WindowsではOraociei119.dll)を検索し、アプリケーションがInstant Clientモードで動作するかどうかを判断します。

OCIデータ共有ライブラリが見つからない場合、OCIではInstant Client Lightデータ共有ライブラリ(表2-3および表2-4を参照)、libociicus.so (WindowsではOraociicus19.dll)のロードを試みます。Instant Client Lightのライブラリが見つかった場合、アプリケーションはInstant Client Lightモードで動作します。それ以外の場合は、Oracleホームでの完全インストールが想定されます。

表2-3 LinuxおよびUNIX用のInstant Client Light共有ライブラリ

LinuxおよびUNIX LinuxおよびUNIXでの説明

libclntsh.so.19

libclntshcore.so.19

クライアント・コード・ライブラリ

libociicus.so

OCI Instant Client Lightデータの共有ライブラリ

libnnz19.so

セキュリティ・ライブラリ

libons.so

Oracle Notification Service (ONS)ライプラリ

libmql1.so

軽量IPCライブラリ

libipc1.so

メッセージ・キュー軽量ライブラリ

表2-4 Microsoft Windows用のInstant Client Light共有ライブラリ

Microsoft Windows Microsoft Windowsでの説明

oci.dll

アプリケーションがリンクする転送機能

oraociicus19.dll

データとコード

orannzsbb19.dll

セキュリティ・ライブラリ

oci.sym

oraociicus19.sym

orannzsbb19.sym

シンボル表

関連項目:

LinuxおよびUNIX用のInstant Client共有ライブラリ 表2-1

Microsoft Windows用のInstant Client共有ライブラリ 表2-2

2.6.3 Oracle Instant Client Lightのインストール

Instant Client Lightのインストール方法を説明します。

Instant Client Lightのインストールは、次のいずれかの方法で行うことができます。

  • Oracle Technology Network (OTN)からのインストール

    URL「Oracle Instant Client」は、Oracle Technology Network WebサイトのInstant Clientページです。

    Instant Client Lightの場合、basiclite.zipパッケージを空のinstantclient_12_2ディレクトリにダウンロードし、解凍します。

  • Instant Client Administratorインストールからのインストール

    ORACLE_HOME/instantclient/lightサブディレクトリから、libociicus.so (Windowsではoraociicus12.dll)をコピーします。LD_LIBRARY_PATH (WindowsではPATH)のInstant Clientディレクトリに、サイズの大きいOCI Instant Clientデータ共有ライブラリlibociei.so (Windowsではoraociei12.dll)のかわりに、Instant Client Lightデータ共有ライブラリlibociicus.so (Windowsではoraociicus12.dll)を格納します。

  • Oracle Universal Installerインストールからのインストール

    Oracle Universal InstallerでInstant Clientオプションを選択した場合、libociei.so (Windowsではoraociei12.dll)はインストールのベース・ディレクトリにインストールされ、これらのファイルがLD_LIBRARY_PATH (WindowsではPATH)に置かれることになります。

    Instant Light Clientデータ共有ライブラリlibociicus.so (Windowsではoraociicus12.dll)は、ベース・ディレクトリのlightサブディレクトリにインストールされ、デフォルトでは無効です。したがって、Instant Client Lightモードを使用するには、OCIデータ共有ライブラリlibociei.so (WindowsではOraociei12.dll)を削除するか名前を変更し、Instant Client Lightのライブラリをその環境のlightサブディレクトリからベース・ディレクトリにコピーする必要があります。

    たとえば、Oracle Universal InstallerでInstant ClientをLD_LIBRARY_PATH (WindowsではPATH)のmy_oraic_12_2ディレクトリにインストールした場合、Instant Client Lightモードを使用するには、次のコマンド・シーケンスを実行します。

    cd my_oraic_12_2
    rm libociei.so
    mv light/libociicus.so .

    ノート:

    インストールに互換性のないバイナリが存在しないように、常に空のディレクトリにInstant Clientのファイルをコピーしインストールしてください。

2.7 LinuxまたはUNIXでのInstant Client共有ライブラリへのパッチの適用について

Instant Clientはデプロイメント用の機能であるため、OCIアプリケーションの実行に必要なファイルの数およびサイズ(クライアント・フットプリント)が減らされました。

したがって、Instant Client共有ライブラリにパッチを適用するために必要なファイルは、Instant Clientのデプロイメントですべて入手できるわけではありません。パッチの適用には、Oracleホームをベースとした完全なクライアント・インストールが必要です。パッチを適用するには、opatchユーティリティを使用します。

Oracleホーム環境にパッチを適用した後、「ZIPファイルから、RPMから、およびOracle Universal Installerからのインストール」の説明に従って、「Oracle Instant Clientについて」に記載されているファイルをInstant Clientディレクトリにコピーします。

個々のファイルをコピーするかわりに、「データ共有ライブラリ、zipおよびRPMファイルの再生成」の説明に従って、OCIとOCCI、JDBCおよびSQL*Plus用のInstant Client zipおよびRPMファイルを生成できます。次に、「ZIPファイルから、RPMから、およびOracle Universal Installerからのインストール」の説明に従って、zipおよびRPMファイルをターゲット・システムにコピーして解凍できます。

opatchユーティリティによって、ORACLE_HOMEインストールのパッチ適用情報がlibclntsh.soに格納されます。この情報を取り出すには、次のコマンドを使用します。

genezi -v

Instant Clientのデプロイメント・システムにgeneziユーティリティがない場合、ORACLE_HOME/binディレクトリからそれをコピーできます。

ノート:

opatchユーティリティは、Windowsでは使用できません。

2.8 データ共有ライブラリ、zipおよびRPMファイルの再生成

データ共有ライブラリとzipおよびRPMファイルを再生成するプロセスは、Oracle Database 12cリリース1 (12.1)で変更されました。

データ共有ライブラリ、zipおよびRPMファイルを作成するために、別々のMakefileターゲットが個々にまたは一度に使用されます。現在、ilibocieiでは、zipファイルおよびRPMファイルのみが作成されます。データ共有ライブラリの再生成には、コンパイラとリンカーの両方が必要で、これらはすべてのインストールで使用可能というわけではありません。後続の各項では、データ共有ライブラリ、zipおよびRPMファイルを再生成するために使用するMakefileターゲットを示します。

ノート:

再生成されたInstant Clientバイナリには、再生成を行ったOracle Client AdministratorホームでインストールされたInstant Clientファイルのみが含まれます。そのため、再生成環境に存在するエラー・メッセージ、文字セット・エンコーディングおよびタイムゾーン・ファイルは、データ共有ライブラリにパッケージされているもののみです。エラー・メッセージ、文字セット・エンコーディングおよびタイムゾーン・ファイルは、Oracle Client Administratorホームのインストールで選択された各国語に依存します。

データ共有ライブラリ、zipおよびRPMファイルの再生成は、Windowsプラットフォームでは使用できません。

2.8.1 データ共有ライブラリlibociei.soの再生成

OCI Instant Clientデータ共有ライブラリ(libociei.so)は、ORACLE_HOMEの管理者インストールで次のコマンドを使用することで再生成できます。

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk igenlibociei

新しく再生成されたlibociei.soは、ORACLE_HOME/instantclientディレクトリに置かれます。同じディレクトリにある元の既存のlibociei.soは、libociei.so0に名前が変更されます。

2.8.2 データ共有ライブラリlibociicus.soの再生成

Instant Client Lightデータ共有ライブラリ(libociicus.so)を再生成するには、次のコマンドを使用します。

mkdir -p $ORACLE_HOME/rdbms/install/instantclient/light
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk igenlibociicus

新しく再生成されたlibociicus.soは、ORACLE_HOME/instantclient/lightディレクトリに置かれます。同じディレクトリにある元の既存のlibociicus.soは、libociicus.so0に名前が変更されます。

2.8.3 データ共有ライブラリlibociei.soおよびlibociicus.soの同時再生成

データ共有ライブラリlibociei.soとlibociicus.soを再生成するには、次のコマンドを使用します。

mkdir -p $ORACLE_HOME/rdbms/install/instantclient/light
cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk igenliboci

新しく再生成されたlibociei.soは、ORACLE_HOME/instantclientディレクトリに置かれます。同じディレクトリにある元の既存のlibociei.soは、libociei.so0に名前が変更されます。

新しく再生成されたlibociicus.soは、ORACLE_HOME/instantclient/lightディレクトリに置かれます。同じディレクトリにある元の既存のlibociicus.soは、libociicus.so0に名前が変更されます。

2.8.4 基本パッケージ用のzipおよびRPMファイルの再生成

基本パッケージ用にzipおよびRPMファイルを再生成するには、次のコマンドを使用します。

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk ic_basic_zip

2.8.5 基本軽量パッケージ用のzipおよびRPMファイルの再生成

基本軽量パッケージ用にzipおよびRPMファイルを再生成するには、次のコマンドを使用します。

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk ic_basiclite_zip

2.8.6 JDBCパッケージ用のzipおよびRPMファイルの再生成

JDBCパッケージ用にzipおよびRPMファイルを再生成するには、次のコマンドを使用します。

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk ic_jdbc_zip

2.8.7 ODBCパッケージ用のzipおよびRPMファイルの再生成

ODBCパッケージ用にzipおよびRPMファイルを再生成するには、次のコマンドを使用します。

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk ic_odbc_zip

2.8.8 SQL*Plusパッケージ用のzipおよびRPMファイルの再生成

SQL*Plusパッケージ用にzipおよびRPMファイルを再生成するには、次のコマンドを使用します。

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk ic_sqlplus_zip

2.8.9 ツール・パッケージ用のzipおよびRPMファイルの再生成

ツール・パッケージ用にzipおよびRPMファイルを再生成するには、次のコマンドを使用します。

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk ic_tools_zip

2.8.10 全パッケージ用のzipおよびRPMファイルの再生成

全パッケージ用にzipおよびRPMファイルを再生成するには、次のコマンドを使用します。

cd $ORACLE_HOME/rdbms/lib
make -f ins_rdbms.mk ilibociei

新しいzipおよびRPMファイルが次のディレクトリに生成されます。

$ORACLE_HOME/rdbms/install/instantclient

データ共有ライブラリ、zipおよびRPMファイルの再生成は、Windowsプラットフォームでは使用できません。