共计 6464 个字符,预计需要花费 17 分钟才能阅读完成。
这篇文章给大家介绍 DG 归档丢失场景下如何重新同步 physical standby,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
一. 场景描述
由于归档日志丢失,导致物理备库 MRP 进程无法与主库同步。
SQL select thread#, max(sequence#) Last Standby Seq Received
2 from v$archived_log val, v$database vdb
3 where val.resetlogs_change# = vdb.resetlogs_change#
4 group by thread# order by 1;
THREAD# Last Standby Seq Received
———- ————————-
1 1121
2 1143
SQL select thread#, max(sequence#) Last Standby Seq Applied
2 from v$archived_log val, v$database vdb
3 where val.resetlogs_change# = vdb.resetlogs_change#
4 and val.applied in (YES , IN-MEMORY)
5 group by thread# order by 1;
THREAD# Last Standby Seq Applied
———- ————————
1 882
2 853
二. 使用主库增量备份进行备库恢复
1. 查询备库 SCN
SQL SELECT CURRENT_SCN FROM V$DATABASE;
SQL select min(fhscn) from x$kcvfh; – 推荐
MIN(FHSCN)
—————————————-
41888422
2. 只读表空间处理
如果存在只读表空间,则需要在主库执行下面命令:
SQL alter tablespace xxx read write ;
SQL alter tablespace xxx read only ;
3. 根据备库 SCN,在主库进行增量备份
RMAN BACKUP INCREMENTAL FROM SCN 41888422 DATABASE FORMAT /tmp/ForStandby_%U tag FORSTANDBY
Starting backup at 2018-03-30 15:38:47
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=39 instance=racdb12c1 device type=DISK
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00006 name=+DGDATA1/RACDB12C/DATAFILE/ees_dat01.dbf
input datafile file number=00007 name=+DGDATA2/RACDB12C/DATAFILE/ees_idx01.dbf
input datafile file number=00002 name=+DGSYSTEM/RACDB12C/DATAFILE/sysaux.272.960743041
input datafile file number=00001 name=+DGSYSTEM/RACDB12C/DATAFILE/system.271.960743017
input datafile file number=00008 name=+DGDATA1/racdb12c/datafile/ees_idx02.dbf
input datafile file number=00009 name=+DGDATA1/racdb12c/datafile/ees_idx03.dbf
input datafile file number=00003 name=+DGSYSTEM/RACDB12C/DATAFILE/undotbs1.273.960743055
input datafile file number=00004 name=+DGSYSTEM/RACDB12C/DATAFILE/undotbs2.275.960743081
input datafile file number=00005 name=+DGSYSTEM/RACDB12C/DATAFILE/users.276.960743083
channel ORA_DISK_1: starting piece 1 at 2018-03-30 15:38:52
channel ORA_DISK_1: finished piece 1 at 2018-03-30 15:45:50
piece handle=/tmp/ForStandby_5fsv3e4b_1_1 tag=FORSTANDBY comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:06:58
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
including current control file in backup set
channel ORA_DISK_1: starting piece 1 at 2018-03-30 15:45:58
channel ORA_DISK_1: finished piece 1 at 2018-03-30 15:46:05
piece handle=/tmp/ForStandby_5gsv3ehf_1_1 tag=FORSTANDBY comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:07
Finished backup at 2018-03-30 15:46:05
4. 将备份文件 copy 至备库并注册
scp root@rac1:/tmp/ForStandby_5fsv3e4b_1_1 /tmp
scp root@rac1:/tmp/ForStandby_5gsv3ehf_1_1 /tmp
catalog backuppiece /tmp/ForStandby_5fsv3e4b_1_1
catalog backuppiece /tmp/ForStandby_5gsv3ehf_1_1
- 确认
list backup
BS Key Type LV Size Device Type Elapsed Time Completion Time
——- —- — ———- ———– ———— ——————-
12 Incr 1.96G DISK 00:06:55 2018-03-30 15:45:46
BP Key: 12 Status: AVAILABLE Compressed: NO Tag: FORSTANDBY
Piece Name: /tmp/ForStandby_5fsv3e4b_1_1
List of Datafiles in backup set 12
File LV Type Ckp SCN Ckp Time Abs Fuz SCN Sparse Name
—- — —- ———- ——————- ———– —— —-
1 Incr 52145113 2018-03-30 15:38:52 NO /oradata/racdb12cdg/datafilesys/datafile/system.271.960743017
2 Incr 52145113 2018-03-30 15:38:52 NO /oradata/racdb12cdg/datafilesys/datafile/sysaux.272.960743041
3 Incr 52145113 2018-03-30 15:38:52 NO /oradata/racdb12cdg/datafilesys/datafile/undotbs1.273.960743055
4 Incr 52145113 2018-03-30 15:38:52 NO /oradata/racdb12cdg/datafilesys/datafile/undotbs2.275.960743081
5 Incr 52145113 2018-03-30 15:38:52 NO /oradata/racdb12cdg/datafilesys/datafile/users.276.960743083
6 Incr 52145113 2018-03-30 15:38:52 NO /oradata/racdb12cdg/datafileuser/datafile/ees_dat01.dbf
7 Incr 52145113 2018-03-30 15:38:52 NO /oradata/racdb12cdg/datafileuser/datafile/ees_idx01.dbf
8 Incr 52145113 2018-03-30 15:38:52 NO /oradata/racdb12cdg/datafileuser/datafile/ees_idx02.dbf
9 Incr 52145113 2018-03-30 15:38:52 NO /oradata/racdb12cdg/datafileuser/datafile/ees_idx03.dbf
BS Key Type LV Size Device Type Elapsed Time Completion Time
——- —- — ———- ———– ———— ——————-
13 Incr 46.50M DISK 00:00:08 2018-03-30 15:45:59
BP Key: 13 Status: AVAILABLE Compressed: NO Tag: FORSTANDBY
Piece Name: /tmp/ForStandby_5gsv3ehf_1_1
Control File Included: Ckp SCN: 52146933 Ckp time: 2018-03-30 15:45:51
5. 恢复备库 controlfile
(1). 启动备库至 nomount 状态
startup nomount
(2). 备份备库控制文件
cp /oradata/control_file/control01.ctl /oradata/control_file/control01.ctl.bak
(3). 恢复控制文件
restore standby controlfile to /oradata/control_file/control01.ctl from /tmp/ForStandby_5gsv3ehf_1_1
(4). 查看恢复控制文件内容
alter database backup controlfile to trace ;
* 由于控制文件是从主库恢复过来的,因此需要确认相关文件的文件名是否一致,相关命令:
SELECT a.FILE#, a.NAME,a.CHECKPOINT_CHANGE#,a.LAST_CHANGE#,status FROM v$datafile a;
alter system set standby_file_management=manual;
alter database rename file file_name to file_name
6. 在备库应用增量备份
RMAN RECOVER DATABASE NOREDO;
Starting recover at 2018-03-30 16:00:23
using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=22 device type=DISK
channel ORA_DISK_1: starting incremental datafile backup set restore
channel ORA_DISK_1: specifying datafile(s) to restore from backup set
destination for restore of datafile 00001: /oradata/racdb12cdg/datafilesys/datafile/system.271.960743017
destination for restore of datafile 00002: /oradata/racdb12cdg/datafilesys/datafile/sysaux.272.960743041
destination for restore of datafile 00003: /oradata/racdb12cdg/datafilesys/datafile/undotbs1.273.960743055
destination for restore of datafile 00004: /oradata/racdb12cdg/datafilesys/datafile/undotbs2.275.960743081
destination for restore of datafile 00005: /oradata/racdb12cdg/datafilesys/datafile/users.276.960743083
destination for restore of datafile 00006: /oradata/racdb12cdg/datafileuser/datafile/ees_dat01.dbf
destination for restore of datafile 00007: /oradata/racdb12cdg/datafileuser/datafile/ees_idx01.dbf
destination for restore of datafile 00008: /oradata/racdb12cdg/datafileuser/datafile/ees_idx02.dbf
destination for restore of datafile 00009: /oradata/racdb12cdg/datafileuser/datafile/ees_idx03.dbf
channel ORA_DISK_1: reading from backup piece /tmp/ForStandby_5fsv3e4b_1_1
channel ORA_DISK_1: piece handle=/tmp/ForStandby_5fsv3e4b_1_1 tag=FORSTANDBY
channel ORA_DISK_1: restored backup piece 1
channel ORA_DISK_1: restore complete, elapsed time: 00:00:55
Finished recover at 2018-03-30 16:01:21
7. 确认
确认主备库 SCN,并开启 MRP 进程,如果成功继续同步,则任务完成。
关于 DG 归档丢失场景下如何重新同步 physical standby 就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。