我已经安装了oracle服务器并且它正常工作。但是,安装在另一台计算机上的客户端无法正常工作。错误TNS-12541:TNS:没有监听器出现。
我的TNSNames.ora:
SCP =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.2.39)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = DatabaseIO)
)
)
在服务器机器中,我可以连接到databaseIO。
还有其他配置吗?
答案 0 :(得分:2)
在评论中,您有lsnrctl status
的摘录:
Listening Endpoints summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521))) Services summary...
您的侦听器仅在127.0.0.1
上侦听,因此只能从服务器进行连接。您的外部地址10.0.2.39
没有任何内容,因此该地址上与端口1521的连接失败。
您的listener.ora
可能只有一个ADDRESS
,或者根本没有ADDRESS
,默认为localhost:1521
。您需要将其修改为:
LISTENER =
...
(ADDRESS_LIST =
...
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.2.39)(PORT = 1521))
)
或您机器的主机名,如果它可以解析到该地址。理想情况下,这可以通过netca
完成,而不是手动编辑文件。