Linux または UNIX における IBM データ・サーバー製品の PHP 環境のセットアップ

IBM® データベース・サーバーに接続して SQL ステートメントを実行する前に、PHP 環境をセットアップする必要があります。

始める前に

以下の必須ソフトウェアがシステムにインストールされている必要があります。
  • PHP バージョン 5 以降
  • PHP アプリケーションがリモート IBM データベースに接続する場合、PHP アプリケーションを実行するコンピューターには、以下のいずれかの製品が必要です。
    • IBM Data Server Client 製品
    • IBM Data Server Runtime Client 製品
    • IBM Data Server Driver Package 製品
    • IBM Data Server Driver for ODBC and CLI 製品
    PHP アプリケーションがローカル・コンピューター上の IBM データベース・サーバーに接続する場合、追加の IBM データ・サーバー製品は必要ありません。

プロシージャー

ibm_db2 拡張モジュールおよび pdo_ibm php 拡張モジュールをインストールするには、次のようにします。

  1. export コマンドを使用して、環境変数 IBM_DB_HOME を設定します。
    $export IBM_DB_HOME=DB2HOME
    
    DB2HOME は、IBM データ・サーバー製品がインストールされているディレクトリーです。 例えば、以下のようにします。
    $ export IBM_DB_HOME=/home/db2inst1/sqllib
  2. 以下の 3 つのいずれかの方式を使用して、ibm_db 拡張モジュールおよび pdo_ibm 拡張モジュールをインストールします。
    • PHP Extension Community Library (PECL) に含まれている pecl install コマンドを使用します。
      • ibm_db2 拡張モジュールをインストールするには、次のようにします。
        $ pecl install ibm_db2
        
      • pdo_ibm 拡張モジュールをインストールするには、次のようにします。
        $ pecl install pdo_ibm
    • ソース・コードに含まれるコマンドを使用します。
      1. ソース・アーカイブを解凍します。
      2. 解凍されたディレクトリーから以下のコマンドを実行します。
        $ phpize --clean
        $ phpize
        $ ./configure
        $ make
        $ make install
      3. pdo_ibm 拡張モジュールをインストールする場合、以下の configure コマンドを実行する必要があります。
        $./configure --with-PDO_IBM=DB2HOME
        DB2HOME 変数は、 IBM データ・サーバー製品がインストールされているディレクトリーです。
    • IBM Data Server 製品に組み込まれているコンパイル済み拡張機能を使用します。
      1. 次のコマンドを発行し、ご使用の PHP 環境がスレッド・セーフか非スレッド・セーフのどちらであるかを判別しなければなりません。
        $ php -i| grep "Thread Safe"
      2. IBM データ・サーバー・クライアントおよび IBM Data Server Driver Package ソフトウェアには、以下の 2 つのタイプの PHP ドライバーが付属しています。
        • スレッド・セーフ: ibm_db2_XX_ts.so および pdo_ibm_XX_ts.so
        • 非スレッド・セーフ: ibm_db2_XX_nts.so および pdo_ibm_XX_nts.so
        cp コマンドを使用して、該当する PHP ドライバー共有ライブラリー・ファイルを、 ibm_db2.so ファイルおよび pdo_ibm.so ファイルとして インストールされている PHP 拡張ディレクトリーにコピーします。
        32 ビットの PHP ドライバーの場合:
        $ cp DB2HOME/php/php32/ibm_db2_XX_[ts/nts].so <local_php_directory>/php/lib/php/extensions/ibm_db2.so
        $ cp DB2HOME/php/php32/pdo_ibm_XX_[ts/nts].so <local_php_directory>/php/lib/php/extensions/pdo_ibm.so
        
        64 ビットの PHP ドライバーの場合:
        $ cp DB2HOME/php/php64/ibm_db2_XX_[ts/nts].so <local_php_directory>/php/lib/php/extensions/ibm_db2.so
        $ cp DB2HOME/php/php64/pdo_ibm_XX_[ts/nts].so <local_php_directory>/php/lib/php/extensions/pdo_ibm.so
        
        DB2HOME 変数は、 IBM データ・サーバー製品がインストールされているディレクトリーです。
  3. 任意のエディターで、 php.ini ファイルを開きます。 <local_php_directory>/php/lib ディレクトリーにある php.ini ファイル内の拡張エントリーを編集して、PHP ドライバーを参照します。
    extension=pdo.so
    extension=ibm_db2.so
    extension=pdo_ibm.so
  4. AIX オペレーティング・システム以外の Linux および UNIX オペレーティング・システムの LD_LIBRARY_PATH 変数を設定して、PHP ドライバーが libdb2.so CLI ドライバー・ファイルにアクセスできることを確認します。 AIX オペレーティング・システムの場合、LIBPATH 変数を設定する必要があります。
    • AIX オペレーティング・システム以外の 32 ビットの Linux および UNIX オペレーティング・システムの場合、export コマンドを使用して、IBM_DB_HOME/lib32 ディレクトリーを LD_LIBRARY_PATH 変数に設定します。
      export LD_LIBRARY_PATH=DB2HOME/lib32
    • 32 ビットの AIX オペレーティング・システムの場合、export コマンドを使用して IBM_DB_HOME/lib32 ディレクトリーを LIBPATH 変数に設定します。
      export LIBPATH=DB2HOME/lib32
    • AIX オペレーティング・システム以外の 64 ビットの Linux および UNIX オペレーティング・システムの場合、export コマンドを使用して LD_LIBRARY_PATH 変数を IBM_DB_HOME/lib64 ディレクトリーに設定します。
      export LD_LIBRARY_PATH=DB2HOME/lib64
    • 64 ビットの AIX オペレーティング・システムの場合、export コマンドを使用して LD_LIBRARY_PATH 変数を IBM_DB_HOME/lib64 ディレクトリーに設定します。
      export LIBPATH=DB2HOME/lib64
  5. オプション: IBM データベース・サーバーに接続する PHP アプリケーションが HTTP サーバー環境で実行されている場合:
    1. LD_LIBRARY_PATH 変数を httpd.conf ファイルまたは httpd.service ファイルに追加します。
      32 ビット・アーキテクチャーの場合は、LD_LIBRARY_PATH を DB2HOME\lib32 ディレクトリーに設定します。 64 ビット・アーキテクチャーの場合、LD_LIBRARY_PATH を DB2HOME&#xa5;lib64 ディレクトリーに設定します。
    2. HTTP サーバーを再始動し、新しい構成設定が有効になるようにします。