kotaoueはそんなかんじ

kotaoueの最新情報。

oci_connectがcronで動かなかった

oci_connectを利用してOracelに接続してたphpを
cronで実行しようとしたら、接続できなくなってつまった話。
実行してたのは、↓のようなCode

$conn = oci_connect( "USERNAME", "PASSWORD", "CONNECTION" );
対処は、PHP: oci_connect – Manualを参考に、
インスタンス名じゃなくて、Easy Connect 文字列って奴を使うように変更した。

$conn  = oci_connect( "USERNAME", "PASSWORD",
                                 "(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
                                 (HOST = 192.168.0.1)(PORT = 1521)))
                                 (CONNECT_DATA = (SID = orcl)))" );

↑の感じ。

Easy Connect 文字列は、
/usr/local/oracle8-client/network/admin/tnsnames.ora
とかに書いてる奴ね。
cronだけNGってことは、パーミッションがらみだと思うものの、
それなりに長い間運用していて、色んなユーザでOracle使ってるので、
いじると痛い目見そうという予感から、今回は対処療法だけで
♪
    ∧_∧ ♪
. ((o(・ω・` )(o))
   /    /
   し―-J
♪
   ∧_∧
 ((o(´・ω・)o))
    ヽ   ヽ ♪
    し―-J 

コメントはまだありません

コメントを残す

メールアドレスが公開されることはありません。