我需要将 oracle 11g 数据库与我的 xampp 服务器连接,并且我需要本地和远程连接。为此,我首先安装了 oracle 11g express edition 并下载instantclient-basic-nt-11.2.0.4.0
并放置了提取的文件夹instantclient_11_2
,C:\
然后我设置了环境变量(系统变量),我的路径值如下所示path=C:\oraclexe\app\oracle\product\11.2.0\server\bin;C:\instantclient_11_2
。
然后我从文件中删除了;
之前extension=php_oci8.dll
和之后。然后首先我尝试连接我的本地数据库:extension=php_oci8_11g.dll
php.ini
$tns_turjo = '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.13)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))'; // tns of another pc
$tns_ishrak = '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.18)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE)))'; // tns of my pc
$conn = oci_connect('system', 'cibl123*#', $tns_turjo);
if($conn) {
echo "connected";
}
else {
echo "not";
}
当我通过$tns_ishrak
它时回connected
显但是当我尝试访问另一台电脑的 oracle 数据库时,即使用$tns_turjo
然后它not
回显并且错误是
Message: oci_connect(): ORA-12170: TNS:Connect timeout occurred
在连接到另一台电脑时,我还更改了用户名和密码。
注意 在每次启动 Apache 时从 php.ini 文件启用 .dll 扩展后,我会在 xampp 中弹出警告,即Module 'oci8' is already loaded
如何解决远程连接问题?