ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
1、问题现象
新安装的数据库,手工重启后,无法用客户端访问数据库,提示错误:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
系统重启,数据库是正常的。
2、处理过程
这个问题以前也遇到过,手工在listener.ora文件中配置SID即可。
通过lsnrctl status 查看监听状态:
只能看到CLRExtProc一个实例注册成功,没有业务用的sid信息,说明业务的实例没有注册到监听中。
服务摘要..
服务 "CLRExtProc" 包含 1 个实例。
实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
原始,没有调整的listener.ora 。
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\app\product\11.2.4\db_1)
(PROGRAM = extproc)
)
)
)
手工增加实例信息,将ORCL实例手工添加到监听文件中 :
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\app\product\11.2.4\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = C:\oracle\app\product\11.2.4\db_1)
(SID_NAME = ORCL)
)
)
)
重启启动监听后,检查监听状态:
服务摘要..
服务 "CLRExtProc" 包含 1 个实例。
实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
服务 "orcl" 包含 1 个实例。
实例 "orcl", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
命令执行成功
可以看到orcl的实例已经成功注册到监听中。