我已经在 Linux Fedora 机器上安装了 Oracle 11g XE,成功创建了一个用户,并将数据库导入其中。
我的最终目标是通过 OCI8 和 MDB2 连接现有的 PHP 网站(也驻留在机器上),但我在执行此操作时遇到了问题(尽管如下所述进行了本地试用) - 因此,我一次迈出一小步。
在转向更复杂的解决方案之前,我想测试一下连接,看看是否存在任何问题。
SQLPLUS
使用 Linux 机器本身,我尝试通过命令行登录 Oracle 数据库。一切正常。但是,使用基于 Windows 的 PC,通过 Oracle SQL 开发人员返回以下错误:
状态:失败 - 测试失败:IO 错误:网络适配器无法建立连接。
这并没有告诉我太多信息。我可以从 Windows ping Linux 机器,但使用 telnet 并指定端口 (1521) 会返回以下错误:
无法在端口 1521 上打开与主机的连接:连接失败。
因此我假设我的 Oracle 设置有问题。
我还可以检查什么或做什么来解决这个问题?
谢谢。
编辑: 额外细节:
以下是我用来连接 Linux 机器的方法:
到目前为止相当标准的东西(默认端口:1521,SID:xe)。
我最近还在上述 Linux 服务器上安装了 SQL Developer,并尝试连接。连接成功,目前没有问题。
答案1
当您从主机使用 sqlplus 时,sqlplus 使用 IPC 通信。当您尝试远程连接到 Oracle 实例时,您将使用 tnslistener。您的监听器是否正在运行?
lsnrctl status
如果是,那么可能是你的防火墙。关闭内置防火墙,然后重试
/etc/init.d/iptables stop