【发布时间】:2012-03-21 18:34:22
【问题描述】:
我有一个试图通过 SQL Plus 连接的数据库。我从命令行运行这个命令:
sqlplus username/password@//hostname:port/sid
我使用这个连接字符串而不是使用 tsnames。我不断收到的错误是
ERROR:
ORA-12514: TNS:listener does not currently know of service requested in connect
descriptor
奇怪的是,使用相同的连接信息,我可以通过 SQL Developer 很好地连接。我可以看到表、用户和其他所有内容。有人知道会发生什么吗?
附:我尝试设置 tsnames,但它给出的结果与使用连接字符串相同。
【问题讨论】:
-
您尝试添加的 tnsnames.ora 条目是什么?您究竟是如何配置 SQL Developer 的?您是在 SQL Developer 的“SID”或“服务名称”文本框中输入 SQL*Plus 连接字符串中的“sid”吗?监听器是否真的支持与数据库 SID 同名的服务?
-
您的数据库的 SID 和服务名称是否相同?
-
在服务器上运行 lsnrctl status 查看注册了哪些服务。
-
其实lsnrctl services更好
标签: sql oracle oracle11g connection-string sqlplus