Do You PHP?    
Search Engine Optimization  php5 powerd  Valid XHTML 1.0!  Valid CSS!  このサイトのはてなブックマーク数 



last updated
2003/06/15

counter hits
since 1999/11/06


Oracle製品は何をインストールすればいい? - Oracle9i編

Oracle8iにも書いたとおり、Oracleから見た場合、SQL*PlusもPHPも1クライアントにすぎません。そのため、PHPをインストールするサーバにもNet Service(Net8/9)が必要となります。極端に言うとNet ServiceとPHPのコンパイルに必要となるOCI関連のヘッダファイルをインストールすればOKです。今回はCustomインストールで、Net Service・OCIのみインストールしました。

。。。と簡単に書いていますが、Oracle9iのインストール自体に問題ありでした。まあ、まだ正式サポートされていないRed Hat7.2ですので、文句は言えないんですが。。。

ここだけの話、ホントに丸3日かかってしまいました(-"-;ゲソー

せっかくですので、Oracle9iのインストール手順をまとめておきます。ちなみに、こちらのサイトが元ネタです。

今回の環境は以下の通りです。Oracle9iからkernel2.4、glibc2.2が必要と言うことで、今回はRed Hat Linux7.2(FTP版)にOracle9.0.1i for Linuxをインストールしてみました。

  • ショップブランドマシン(Athlon 1.4GHz/1300MB Mem/30GB HDD)
  • Red Hat Linux 7.2(FTP版。VMware3.0上で稼働)
  • Apache1.3.23
  • PHP4.1.2
  • Oracle 9.0.1i for Linux

まず、CD-ROM(1/3)をmountしてindex.htmlをブラウザ開き、「Quick Installation Procedure」にあるORACLE_HOMEなどの環境変数を設定します。そして、インストーラを起動し、「Available Products」画面で「Oracle9i Client」を選択します。

Available Products画面

続く「Installation Types」画面で「Custom」

Installation Types画面

続く「Available Products Component」画面で「Oracle Call Interface (OCI) 9.0.1.0.0」「Oracle XML Developers Kit 9.0.1.0.0(外せません)」「Oracle XML SQL Utility 9.0.1.0.0(外せません)」「Oracle Net Services 9.0.1.0.0」にチェックを付けます。

Available Products Components画面

これでインストールを開始すると、順調に進みます。。。途中までは(^-^;

で、いきなり、

Error画面

なダイアログが表示されますので、このまま放っておいて別terminalで、$ORACLE_HOME/bin/genclntshスクリプトを以下のように編集します。

●$ORACLE_HOME/bin/genclntsh
  :
147 #LD_SELF_CONTAINED="-z defs"  <==コメントする
148 LD_SELF_CONTAINED=""          <==追加する
  :

memoldのバージョンの問題で、ld 2.11以前のバージョンではLD_SELF_CONTAINEDフラグを無視するのでエラーは発生しないようです(未確認ですが。。。)。

編集が終わったら、$ORACLE_HOME/bin/genclntshを実行します。なお、完了するまでちょっと時間がかかります。実行が完了したら、先ほどのダイアログの「Retry」をクリックします。あとは、スムーズにインストールできるはずです。

ようやくOracleのインストールが完了ですが、PHPで「--with-oracle」オプションを付ける場合は、$ORACLE_HOME/libにあるlibclntsh.so.9.0からlibclntsh.so.8.0へのシンボリックリンクを張っておきます。

$ cd $ORACLE_HOME/lib
$ ln -s libclntsh.so.9.0 libclntsh.so.8.0

インストールが終わったら、こちらにある通り、PHPをインストールします。こちらは特に問題ありませんでした。今回気付いたのですが、PHP4.1.2のconfigureスクリプトは、すでにOracle9iも考慮していました(「--with-oci8」の場合だけですが)。

なお、ライセンスについては担当営業さんなどに確認してください。



About This Site |  Privacy Policy |  Contact
Copyright © 1999 - 2003 by Hideyuki SHIMOOKA all rights reserved.