ADG备库某个PDB不同步(disable recovery)故障处理

大家好!最近在一套CDB模式的12C库中发现某个PDB处于disablerecovery即不同步状态,下面详细介绍下其处理过程。


ADG备库某个PDB(案例为CHECKPDB)开启实时同步操作


1、查看PDB状态,CHECKPDB处于mounted状态

ADG备库某个PDB不同步(disable recovery)故障处理


2、查看PDB发现CHECKPDB处于disabledrecovery状态

ADG备库某个PDB不同步(disable recovery)故障处理


3、停掉实时应用,并重启数据库至mount状态

alterdatabase recover managed standby database cancel;

shutdownimmediate;

startupmount;


4、启动checkdpb的recover

altersession set container=CHECKPDB;

alterpluggable database enable recovery;


5、将数据库启动到open状态,并将所有PDBopen,再开启实时应用并检查状态

alterdatabase open;

alterpluggable database all open;

alterdatabase recover managed standby database using current logfiledisconnect from session;

showpdbs

selectname, recovery_status from v$pdbs;


如果在CDB模式下,ADG备库不想同步某一个PDB的数据,可采取以下方法进行。


备库运行:

selectname, recovery_status from v$pdbs;

alterdatabase recover managed standby database cancel;

altersession set container=CHECKPDB;

alterpluggable database close;

alterpluggable database disable recovery;

conn/ as sysdba

alterdatabase recover managed standby database using current logfiledisconnect from session;


注:由于删除不同步pdb的前提条件是数据库处于openreadwrite模式,所以在ADG备库不能通过命令删除PDB,如需删掉不同步PDB释放空间,找到该PDB的所有数据文件位置,然后直接RM掉。


上一篇:ADG - Active


下一篇:基于 Oracle RAC/ADG/OGG 等数据库双活方案的选择比较