ITPub博客

首页 > 数据库 > Oracle > ORACLE11g DataGuard手工创建错误的解决方案(一)

ORACLE11g DataGuard手工创建错误的解决方案(一)

原创 Oracle 作者:hunterjoy 时间:2015-05-17 15:35:40 0 删除 编辑
运行环境:redhat5.4+oracle11.2.0.3
主库:ndb1
备库: standby1

1、使用RMAN进入时报错,备库的网络服务名STANDBY1的状态为BLOCKED:
[oracle@lfy1 admin]$ rman target / auxiliary sys/oracle@STANDBY1


Recovery Manager: Release 11.2.0.3.0 - Production on Sun Mar 1 08:28:00 2015


Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.


connected to target database: ndb1 (DBID=2082231315)
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00554: initialization of internal recovery manager package failed
RMAN-04006: error from auxiliary database: ORA-12154: TNS:could not resolve the connect identifier specified
原因:查询了一下METALINK,发现这个问题从9i到11g,任何一个版本都可能会出现。造成这个问题的原因是,实例虽然启动,但是没有注册到监听。这时候,使用lsnrctl status查看监听的状态,显示为BOLCKED,实例是通过PMON进程注册到监听上的,而PMON进程需要在MOUNT状态下才会启动。因此造成了上面的错误。
可以参考metalink文档:Note:419440.1。


Oracle给出了两种解决方案,一种方法是对AUXILIARY数据库直接使用/,
                           对TARGET数据库通过网络访问。
第二种方法 为AUXILIARY数据库设置静态监听,在$ORACLE_HOME/network/admin目录下的listener.ora中添加下面的内容:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME =STANDBY1)
(ORACLE_HOME = /data/oracle/product/11.1)
(GLOBAL_DBNAME=STANDBY1)
)
)

配置静态监听后,再次操作,就没有问题了
[oracle@lfy1 admin]$ rman target / auxiliary sys/oracle@STANDBY1


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/543979/viewspace-1659201/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2007-12-31

  • 博文量
    168
  • 访问量
    389687