时间:2021-07-01 10:21:17 帮助过:11人阅读
DataGuard的功能主要是数据保护,故障恢复等,Linux系统下搭建DataGuard的时候,有时会出现ORA-12528报错,遇到这种情况该如何处理呢?一起来学习下吧。
说明:在DataGuard的搭建中,运行rman恢复的时候报错ORA-12528的错误;
脚本如下:RMAN》 connect auxiliary sys/Oracle@SCMPRD02
解决步骤:
1、检查监听是否启动,脚本:tnsping SCMPRD02
方法一:配置数据库的监听为静态参数步骤:在ORACLE_HOME/network/admin 下面检查是否有listener.ora参数文件,如果没有的话运行netca创建数据库的监听,配置完成的监听文件如下:
代码如下:
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = SCMPRDDB02)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = /u01/app/oracle
方法二:修改tnsnames.ora文件
SCMPRD02 =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = TCP)(HOST = WELL)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED) (
SERVICE_NAME = SCMPRD02)
(UR = A) //增加该备注//
)
)
总结:ORA-12528: TNS:listener: all appropriate instances are blocking new connections
因为我们复制数据库只是在nomount下打开,而数据库并没有mount,在11g下所有的监听都是动态监听,而只有在数据库mount以后,PMON进程起来以后,才能动态注册。所以对辅助数据库没有办法注册,只能被锁住。所以修改数据库的监听为静态监听,或者增加(UR=A)即可解决问题。
上面就是Linux下搭建DataGuard时出现ORA-12528报错的处理方法了,上面有2种方法可以解决,赶紧选择一个合适的方法进行处理吧。