【发布时间】:2019-01-10 02:54:18
【问题描述】:
我正在尝试使用 TNS 连接到数据库,并且我能够使用别名成功连接:
sqlplus user/password@UHKGLXXX
但是,当我使用服务名称连接到同一个数据库时,我收到以下错误:
sqlplus user/password@pl0676o.hk.bbc:2006/UHKGLXXX.hk.bbc
ORA-12514: TNS:listener 目前不知道连接描述符中请求的服务
有人可以帮我解决这个问题吗?
下面是 TNSNAMES 条目:
UHKGLXXX =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = pl0676o.hk.bbc)(PORT = 2006))
)
(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = UHKGLXXX.hk.bbc)
)
)
LISTENER_UHKGLXXX = (ADDRESS = (PROTOCOL = TCP)(HOST = pl0676o.hk.bbc)(PORT = 2006))
【问题讨论】:
-
您的
tnsnames.ora文件中的DBNAME条目是什么?是使用 SID 还是服务名称?如果后者与您尝试使用简单连接语法的那个相同?lsnrctl services在 DB 服务器上显示哪些服务? -
@AlexPoole tnsnames.ora 中的 DBname 是 UHGLMX1。它正在使用服务名称。另外,我在连接时尝试使用相同的服务名称。而且,我无权运行 lsnrctl services 命令。 :(
-
嗯,
tnsnames.ora条目中的内容与您在命令行中使用的内容有所不同。 (或者您正在查看错误的文件 *8-)由于我们看不到所涉及的实际值,因此我们无法发现是否只是一个简单的错误或拼写错误。 -
@AlexPoole 我已经编辑了问题以包含 TNSNAMES 的内容:-)
-
好的,如果
@UHKGLXXX可以,那么@pl0676o.hk.bbc:2006/UHKGLXXX.hk.bbc应该可以工作。你确定这就是你实际使用的吗?
标签: oracle sqlplus oracle12c tnsnames