侦听器拒绝连接并出现以下错误:ORA-12514,TNS:侦听器不知道连接描述符中请求的服务

Posted

技术标签:

【中文标题】侦听器拒绝连接并出现以下错误:ORA-12514,TNS:侦听器不知道连接描述符中请求的服务【英文标题】:Listener refused the connection with the following error : ORA-12514, TNS:listener does not know of service requested in connect descriptor 【发布时间】:2018-07-16 03:43:59 【问题描述】:

无法使用 SQLDeveloper 连接到本地 Oracle DB。

我可以通过 SQLPlus 连接,但在 SQLDeveloper 中出现上述错误。

我的 SQLDeveloper 连接详细信息:

这是我的 tnsnames.oralistener.ora 文件

tnsnames.ora

XE =
  (DESCRIPTION =
    (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = ######.com)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

ORACLR_CONNECTION_DATA = 
  (DESCRIPTION = 
    (ADDRESS_LIST = 
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) 
    ) 
    (CONNECT_DATA = 
      (SID = CLRExtProc) 
      (PRESENTATION = RO) 
    ) 
  ) 

listener.ora

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = ######.com)(PORT = 1521))
    )
  )

DEFAULT_SERVICE_LISTENER = (XE)

######.com 是我电脑的主机名。

如果我尝试启动监听器,我会收到以下消息:

任何帮助将不胜感激。

编辑:

监听器状态(黄色部分是我的电脑名/主机名)

【问题讨论】:

您是否修改了文件 listener.ora 中的主机名? @DmitryDemin 不。 运行lsnrctl status @DmitryDemin 我已将侦听器状态添加为编辑。请检查一下。 运行sqlplus / as sydba并输入命令alter system register向监听器注册实例并再次运行lsnrctl status 【参考方案1】:

尝试设置正确的全局名称,找到当前使用:

select * from global_name;

alter database rename global_name to xe;

使用以下方法查看更多信息:

$>lsnrctl 状态

$>tnsping xe

【讨论】:

或尝试切换到使用 SID (xe) vs SERVICE

以上是关于侦听器拒绝连接并出现以下错误:ORA-12514,TNS:侦听器不知道连接描述符中请求的服务的主要内容,如果未能解决你的问题,请参考以下文章

Oracle错误——ORA12514:监听程序当前无法识别连接描述符中请求的服务

Oracle ORA12514 监听程序当前无法识别连接描述符中请求的服务

ORA-12514 TNS: 监听器当前不知道连接描述符中请求的服务

连接Oracle远程数据库错误:ORA-12541,ORA-12514,ORA-01017的解决方法!

连接Oracle远程数据库错误:ORA-12541,ORA-12514,ORA-01017的解决方法!

Oracle 监听器日志文件过大导致监听异常报ORA-12514 TNS 错误