使用PHP/oci8连接到Oracle远程数据库 - 不确定如何使用监听器

我的项目的总体目标是连接到另一台服务器上的Oracle数据库,以便使用PHP查询它,以便创建图表使用JavaScript的数据。使用PHP/oci8连接到Oracle远程数据库 - 不确定如何使用监听器

我的服务器运行CentOS的

到目前为止,我已经跟着方向出在网络上,并且已经安装OCI8我的服务器和Oracle Insant客户端上。

然后我创建了一个shell脚本来隧道到远程服务器。

接下来,我创建了一个测试php文件,试图连接到数据库

<?php 

$conn = oci_connect('name', 'pw', 'servername/databasename');

if(!$conn){

$e = oci_error();

trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);

}

oci_close($conn);

?>

当我在我收到以下错误

警告浏览器加载此:oci_connect():ORA- 12541:TNS:第3行中的/var/www/html/djc/ociConnect.php中没有监听器致命错误:ORA-12541:TNS:第6行中的/var/www/html/djc/ociConnect.php中没有监听器

我已经完成了我对错误的研究,并且我知道主要问题是 lsnrctl start

不起作用,我没有lsnrctl函数。我也没有TNSNAMES.ORA或LISTENER.ORA文件。

我不知道如何让lsnrctl在我的服务器上工作,或者我甚至从正确的角度来攻击这个问题。

也试图启动sqlplus(我从rpm安装),返回命令未找到。

有什么建议吗? 我甚至不确定是否要在正确的庄园中实现我的目标,所以任何帮助都非常感谢。

回答:

我用来与连接:

//Putenv("NLS_LANG=SPANISH_SPAIN.WE8ISO8859P15"); 

$db="(DESCRIPTION=

(ADDRESS_LIST=

(ADDRESS=(PROTOCOL=TCP)

(HOST=$GLOBALS[dbhost])(PORT=$GLOBALS[dbport])

)

)

(CONNECT_DATA=(SID=$GLOBALS[dbname]))

)";

$conn = OCILogon($GLOBALS['dbuser'],$GLOBALS['dbpasswd'],$db);

替换$ GLOBALS [ 'DBUSER'],$ GLOBALS [ 'dbpasswd'],$ GLOBALS [DBHOST],$ GLOBALS [DBNAME] $ GLOBALS [dbport ]。

以上是 使用PHP/oci8连接到Oracle远程数据库 - 不确定如何使用监听器 的全部内容, 来源链接: utcz.com/qa/259962.html

回到顶部