本文章来源自网络:http://www.cnblogs.com/zyk/archive/2007/10/31/944667.html 非常感谢原作者。
作如下概要:
关闭数据库(shutdown immediate)后,通过SQL Plus连接数据库:conn / as sysdba,出现如下错误:
ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务
关闭数据库状态下无法连接服务器。
原因:Oracle9i以后,后台进程PMON自动在监听器中注册在系统参数SERVICE_NAMES中定义的服务名,
SERVICE_NAMES默认为DB_NAME+DOMAIN_NAME。
监听配置文件listener.ora中可以不必指定监听的服务名。
但是,当数据库处于关闭状态下PMON进程没有启动,也就不会自动注册监听的实例名,所以使用sqlplus / as sysdba 会出现ORA-12514错误。
在listener.ora文件中添加 监听的实例名,则即使数据库处于关闭状态,仍然可以连接。
(SID_DESC = (GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = G:\oracle\product\10.2.0\db_1)
(SID_NAME = ORCL) ) )
后重启监听服务。