我在连接数据库时收到此错误,但我似乎无法找到原因。
Connection failed: SQLSTATE[HY000]: pdo_oci_handle_factory: ORA-12170: TNS:Connect timeout occurred
(ext\pdo_oci\oci_driver.c:635)Connection failed: SQLSTATE[HY000]: pdo_oci_handle_factory: ORA-12541: TNS:no listener
(ext\pdo_oci\oci_driver.c:635)0
我已经检查了监听器,那里没有任何错误,我也可以使用Toad和SQL Developer,没有任何问题。此外,我已经尝试将php页面放在我的其他本地计算机上,没有发生这样的错误。这是connection.php:
$tns="(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.10)(PORT = 1528)))(CONNECT_DATA = (SID = XE)))";
$oracleUser = 'ADMIN';
$oraclePass = 'ADMIN';
try {
$oracle = new PDO("oci:dbname=".$tns, $oracleUser, $oraclePass, array(PDO::ATTR_PERSISTENT => TRUE));
$oracle->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$oracle->setAttribute(PDO::ATTR_CASE, PDO::CASE_LOWER);
} catch (PDOException $e) {
echo 'Connection failed: ' . $e->getMessage();
}
有趣的是,每次我尝试登录我的页面时都会出现错误,然后在刷新页面后,错误就不再存在了。我已经没事了,我希望有人可以帮忙,谢谢你。