[PHP-users 3962] Re: Oracleへの接続時にエラーが…

Iso, Toshitaka php-users@php.gr.jp
Wed, 28 Nov 2001 18:37:44 +0900


まいパパさん。Mashikiさん。
返事遅れてすいません…。

> 2つのPCの「tnsnames.ora」の"DB"というエントリに関連する部分の
> 記述を見せていただけますでしょうか?

・WEBサーバのTNSNAMES.ora
DB.WORLD =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = XXXX)(PORT = 1521))
    (CONNECT_DATA = (SID = DB))
  )

・DBサーバのTNSNAMES.ora
XXXX.ASIAPACIFIC.CPQCORP.NET =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = XXXX)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SID = DB)
    )
  )

です。

> それがわからないのであれば、とりあえずPHPのソースのOCI_connect部分の
> コーディングを見えせてください。
PHPのソースは↓のようにOracleに接続しました。
<?php
    $conn = Ora_Logon("scott@DB", "tiger");
    $cursor = Ora_Open($conn);
    $strSql = "SELECT SYSDATE FROM dual ";
    $ret = Ora_Parse($cursor, $strSql);
    $ncols = Ora_Exec($cursor);
    While (Ora_Fetch($cursor) == 1) {
    	$tmp = Ora_GetColumn($cursor, 0);
    }
    Ora_Close($cursor);
    Ora_Logoff($conn);
    echo "SYSDATE=$tmp";
?>

この状態でWEBサーバとDBサーバを同じマシンにすると
エラー(Connection Failed)が発生し、別にすると通常どおりの動きが出来ます。