无法通过服务名称使用SQLPLUS连接到oracle数据库

时间:2017-02-14 05:46:49

标签: oracle sqlplus service-name

我正在尝试使用service_name从SQLPLUS连接到Oracle数据库,但我收到了

  

ORA-12154错误(ORA-12154:TNS:无法解析指定的连接标识符。

注意:当我使用SQL Developer时,一切正常。

这是我的tnsnames.ora设置:

SAMPLEDB =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = sampledb)
    )
  )

这是我使用的连接命令:

sqlplus test/password@localhost:1521/sampledb

有人可以告诉我,我做错了吗?

1 个答案:

答案 0 :(得分:0)

除了显而易见的(启动SQL * Plus的命令当然是sqlplus)之外,您在SAMPLEDB连接标识符的定义中缺少一行。

在第一行和第二行之间插入以下行(完全如下所示):

  (DESCRIPTION =

你必须以某种方式删除它。

SAMPLEDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = sampledb)
    )
  )