ORA-12560: TNS: 协议适配器错误  常见原因

或者报以下错误

( Listener refused the connection with the following error:ORA-12514, TNS:listener does not currently know of service requested in connect descriptor   The Connection descriptor used by the client was://localhost:1521/ecmis)  的解决办法

造成ORA-12560: TNS: 协议适配器错误的问题的原因有以下几个:

   1.监听服务没有起动起来。

     windows平台如下操作:开始---程序---管理工具---服务,打开服务面板,启动

 oracleXXXlistener服务。

 

    2.database instance没有起起来。--net start OracleServiceORCL

 

  windows平台如下操作:开始---程序---管理工具---服务,打开服务面板,启动oracleserviceXXXX,  XXXX就是你的database SID.

 

     3.注册表问题。  有三种解决办法,分别如下:

    ?regedit,然后进入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0将该环境变量ORACLE_SID设置为XXXX,XXXX就是你的database SID.

    ?右击我的电脑,属性--高级--环境变量---系统变量--新建,变量名=oracle_sid,变量值=XXXX,XXXX就是你的database SID

   ?进入sqlplus前在command line下set oracle_sid=XXXX,XXXX就是你的database SID.经过以上步骤,就可以解决问题。

 

    4、ORACLE_HOME设置有问题

    5、PATH设置有问题,确保执行sqlplus / as sysdba 命令的sqlplus在服务器路径下

一、    一次案例      

QQ网友说执行sqlplus / as sysdba的时候报了ORA-12560的错误,我以为是服务没有启动起来,远程看的时候,服务是好的,监听也重新配置好了,很奇怪,最后查看环境变量的时候,发现他安装了1个服务器端,1个客户端,在PATH里设置成了客户端的路径,所以sqlplus / as sysdba其实是针对客户端下的工具,修改成服务端的路径后,重启cmd后就可以了。

 

二、    ss      

LSNRCTL for 64-bit Windows: Version 12.1.0.2.0 - Production on 04-6月 -2017 20:41:56

 

Copyright (c) 1991, 2014, Oracle.  All rights reserved.

 

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))

TNS-12541: TNS: 无监听程序

 TNS-12560: TNS: 协议适配器错误

  TNS-00511: 无监听程序

   64-bit Windows Error: 61: Unknown error

正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))

TNS-12541: TNS: 无监听程序

 TNS-12560: TNS: 协议适配器错误

  TNS-00511: 无监听程序

   64-bit Windows Error: 2: No such file or directory

 

解决:使用管理员身份运行cmd后再尝试启动监听

ORA-12560: TNS: 协议适配器错误 常见原因_ORA-12560