| Oracleに接続する際、Warning: Unable to connect to ORACLE (Error while trying to retrieve text for error ORA-12154)が表示されてしまう |
|
以下の原因が考えられます。
- TNSの設定ミス
- /(ルート)ディレクトリから$ORACLE_HOME/network/admin/tnsnames.oraまでのディレクトリ・ファイルパーミッションの設定
|
|
以下の項目をチェックしてみてください。
- tnsping [接続文字列]で、Response が帰ってくるか?
- SQL*Plusで接続できるか?
- tnsnames.ora が読込めるかどうか?
- /(ルート)ディレクトリから$ORACLE_HOME/network/admin/tnsnames.oraまでのディレクトリ・ファイルパーミッションすべてで、otherグループにread権限を与えているか?
※前者3つのチェック項目は、httpd.confに書かれたUser/Group(デフォルトは、nobody/nobody)でApacheを起動したときの環境変数を設定して行ってください。$ORACLE_OWNERで確認しても全てOKのハズ(でないと、そもそもおかしい)なので、あまり意味はありません
|
|
以下の修正を行い、再度動作を確認してみてください。
- phpinfo関数を使って、Apacheの環境変数の値を確認する。誤っている場合、正しく環境変数を設定した後、Apacheを stop / start する(apachectl restartではダメです)。
- TNSの設定を修正する
- tnsnames.ora までのディレクトリパーミッションを755などotherグループにread権限を与えるよう修正する。例えば、ディレクトリのパーミッションを755、tnsnames.oraのパーミッションを644などにする。
|
|