Oracle 12c DG备库Alert报错ORA-10877全库恢复
12C Oracle Data Guard 备库今天异常
2018-07-05T21:31:32.291970+08:00
GEN0 (ospid: 75371): terminating the instance due to error 472
2018-07-05T21:31:32.293376+08:00
System state dump requested by (instance=1, osid=75371 (GEN0)), summary=[abnormal instance termination].
System State dumped to trace file /u01/app/oracle/diag/rdbms/dwjrstdydb/dwjrstdydb/trace/dwjrstdydb_diag_75381_20180705213132.trc
2018-07-05T21:31:32.872916+08:00
Dumping diagnostic data in directory=[cdmp_20180705213132], requested by (instance=1, osid=75371 (GEN0)), summary=[abnormal instance termination].
2018-07-05T21:31:34.229888+08:00
Instance terminated by GEN0, pid = 75371
Standby Crash Recovery aborted due to error 10877.
2018-07-05T21:34:51.173635+08:00
Errors in file /u01/app/oracle/diag/rdbms/dwjrstdydb/dwjrstdydb/trace/dwjrstdydb_ora_94302.trc:
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
2018-07-05T21:34:51.173984+08:00
Recovery interrupted!
Some recovered datafiles maybe left media fuzzy
Media recovery may continue but open resetlogs may fail
2018-07-05T21:34:51.175705+08:00
Errors in file /u01/app/oracle/diag/rdbms/dwjrstdydb/dwjrstdydb/trace/dwjrstdydb_pr00_94311.trc:
ORA-16043: Redo apply has been canceled.
ORA-16016: archived log for thread 1 sequence# 128 unavailable
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery slave
ORA-10877: error signaled in parallel recovery sla
ORA-10877 signalled during: alter database open...
赶快去主库进行备份,然后使用最原始的方式恢复数据库;RMAN备份直接restore、recover的方式,主库编写脚本,进行备份控制文件,参数文件,全库备份;
rman target /
run
{allocate channel c1 type disk;
allocate channel c2 type disk;
allocate channel c3 type disk;
backup filesperset 3 as compressed backupset database format '/home/oracle/0705/fulldata%d%T%s%p';
backup archivelog all format '/home/oracle/0705/arch%d%T%s%p' delete input;
backup current controlfile format '/home/oracle/0705/ctl%d%T%s_%p';
}
单独备份一下控制文件
backup current controlfile for standby format '/home/oracle/ctl.bak';
将备份集全部scp到备库中
scp 0705/* 18.10.11.12:/home/oracle/0705
scp /home/oracle/ctl.bak 18.10.11.12:/home/oracle/0705
备库启动到no mount阶段,进行restore standby controlfile恢复控制文件
RMAN> restore standby controlfile from '/home/oracle/0705/ctl_DWJRDB_20180705_73_1';
备库启动到mount阶段
RMAN> catalog start with '/home/oracle/0705';
开始restore database操作
RMAN> restore database;
开始rocover database操作
RMAN> recover database;
RMAN> alter database open;
备库应用日志
SQL>alter database recover managed standby database using current logfile disconnect from session;
查看备库信息;
SQL> select process, status, thread#,sequence#, block#, blocks from v$managed_standby;
PROCESS STATUS THREAD# SEQUENCE# BLOCK# BLOCKS
RFS IDLE 0 0 0 0
RFS IDLE 0 0 0 0
ARCH CLOSING 1 158 1 7
DGRD ALLOCATED 0 0 0 0
DGRD ALLOCATED 0 0 0 0
ARCH CLOSING 1 164 1 5
ARCH CLOSING 1 157 1 8
ARCH CLOSING 1 165 1 6
RFS IDLE 1 166 3624 1
MRP0 APPLYING_LOG 1 166 3624 2097152
10 rows selected.
特此记录一下,好记性不如烂笔头~