2023年8月1日发(作者:)
TNS-01155:在中指定的SID_LIST_LISTENER参数不正确 [转]⾃INTERNET 近⽇在配置Oracle 10G的流复制环境时,遇到⼀个问题,关闭数据库(shutdown immediate)后,通过SQL Plus连接数据库:connsys/his@orc0 as sysdba,出现如下错误: ORA-12514: TNS: 监听程序当前⽆法识别连接描述符中请求的服务通过重启服务的⽅式启动数据库,再次连接却能成功登录,也就是说在关闭数据库状态下⽆法连接服务器。 开始以为是系统环境变量Oracle_SID的配置问题,因为机器有多个实例,⼀阵折腾后还是不能连接。后来查资料得知: Oracle9i以后,后台进程PMON⾃动在监听器中注册在系统参数SERVICE_NAMES中定义的服务名,SERVICE_NAMES默认为DB_NAME+DOMAIN_NAME。监听配置⽂件中可以不必指定监听的服务名。但是,当数据库处于关闭状态下PMON进程没有启动,也就不会⾃动注册监听的实例名,所以使⽤sqlplus sys/his@orc0 as sysdba 会出现ORA-12514错误。如果在⽂件中指定监听的实例名,则即使数据库处于关闭状态,仍然可以连接。_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = G:/oracle/product/10.2.0/db_1) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME = ORCL) (ORACLE_HOME = G:/oracle/product/10.2.0/db_1)
(SID_NAME = ORCL) ) )LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = zyk)(PORT = 1521)) ) )以上粗体部件为增加的内容,修改后重启监听服务后即可。附:通过在lsnrctl中输⼊set display verbose,然后再通过命令service查看,服务状态为READY表⽰PMON⾃动注册的服务名,⽽UNKNOWN则表⽰该服务是⼿⼯在中配置的数据库服务。---------------------作者:iwanttobeagoodman来源:CSDN版权声明:本⽂为博主原创⽂章,转载请附上博⽂链接!
2023年8月1日发(作者:)
TNS-01155:在中指定的SID_LIST_LISTENER参数不正确 [转]⾃INTERNET 近⽇在配置Oracle 10G的流复制环境时,遇到⼀个问题,关闭数据库(shutdown immediate)后,通过SQL Plus连接数据库:connsys/his@orc0 as sysdba,出现如下错误: ORA-12514: TNS: 监听程序当前⽆法识别连接描述符中请求的服务通过重启服务的⽅式启动数据库,再次连接却能成功登录,也就是说在关闭数据库状态下⽆法连接服务器。 开始以为是系统环境变量Oracle_SID的配置问题,因为机器有多个实例,⼀阵折腾后还是不能连接。后来查资料得知: Oracle9i以后,后台进程PMON⾃动在监听器中注册在系统参数SERVICE_NAMES中定义的服务名,SERVICE_NAMES默认为DB_NAME+DOMAIN_NAME。监听配置⽂件中可以不必指定监听的服务名。但是,当数据库处于关闭状态下PMON进程没有启动,也就不会⾃动注册监听的实例名,所以使⽤sqlplus sys/his@orc0 as sysdba 会出现ORA-12514错误。如果在⽂件中指定监听的实例名,则即使数据库处于关闭状态,仍然可以连接。_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = G:/oracle/product/10.2.0/db_1) (PROGRAM = extproc) ) (SID_DESC = (GLOBAL_DBNAME = ORCL) (ORACLE_HOME = G:/oracle/product/10.2.0/db_1)
(SID_NAME = ORCL) ) )LISTENER = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = zyk)(PORT = 1521)) ) )以上粗体部件为增加的内容,修改后重启监听服务后即可。附:通过在lsnrctl中输⼊set display verbose,然后再通过命令service查看,服务状态为READY表⽰PMON⾃动注册的服务名,⽽UNKNOWN则表⽰该服务是⼿⼯在中配置的数据库服务。---------------------作者:iwanttobeagoodman来源:CSDN版权声明:本⽂为博主原创⽂章,转载请附上博⽂链接!
发布评论