或者报以下错误
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后再尝试启动监听