同事本机oracle起来后通过命令行 sqlplus user/password 方式可以连上,
但通过PL/SQL developer 连不上,问为什么?
检查了一下发现监听没起来。原来是前一段时间项目组统一了机器命名。
修改主机名后,没修改listener.ora,所以本地可以访问。通过监听访问不到。
LSNRCTL> start
启动tnslsnr: 请稍候...
TNSLSNR for 32-bit Windows: Version 11.2.0.1.0 - Production
系统参数文件为d:/oracle/GAO/product/11.2.0/dbhome_1/network/admin/listener.ora
写入d:/oracle/GAO/diag/tnslsnr/SS-GAO/listener/alert/log.xml的日志信息
监听: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=//./pipe/EXTPROC1521ipc)))
监听该对象时出错: (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=GAO-PC)(PORT=1521)))
TNS-12545: 因目标主机或对象不存在, 连接失败
TNS-12560: TNS: 协议适配器错误
TNS-00515: 因目标主机或对象不存在, 连接失败
32-bit Windows Error: 1004: Unknown error
listener.ora中HOST修改为现在的主机名
GAO-PC替换为SS-GAO后可以正常启动监听。
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = GAO-PC)(PORT = 1521))
)
)
同样在tnsnames.ora中配置的host也要修改。
test =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = GAO-PC)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = GAO)
)
)