Oracle DG數據庫gap處理一列

本週遭遇數據庫dg gap,經過增量備份進行修復,主要步驟以下:html

一、肯定增備scn範圍,經過alert日誌獲取gap日誌序列sql

[sql] view plain copy數據庫

  1. GAP - thread 1 sequence 109631-117170  

二、根據序列獲取增備起點SCNapp

提示最小gap序列爲109631, 往前推一個序列,而後得到scn號spa

[html] view plain copy.net

  1. select THREAD#,SEQUENCE#,FIRST_CHANGE#,NEXT_CHANGE# from v$archived_log where SEQUENCE#=109630;  
  2.    THREAD#  SEQUENCE# FIRST_CHANGE# NEXT_CHANGE#  
  3. ---------- ---------- ------------- ------------  
  4.          1     109630    1606624354   1606624958  

三、在primary作基於該scn的增量備份及生成新的備庫控制文件日誌

增量備份數據庫orm

[html] view plain copyhtm

  1.   

export ORACLE_SID=xxxblog

##AIX

CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2000 M; backup incremental from scn 1606624354 database format '/oradata/dgbackup/xxx/xxx_1606624354%U.bak'; 

在primary建立standby controlfile

[html] view plain copy

  1. alter database create standby controlfile as '/oradata/dgbackup/xxx/xxx01.ctl';        


四、備庫關閉數據庫,替換控制文件

關閉備庫,備份當前備庫控制文件

[html] view plain copy

  1. shutdown  immediate    
  2. mv     /oradata/xxx/control01.ctl    /oradata/xxx/control01.ctl.bak  

替換當前備庫控制文件

[html] view plain copy

  1. cp  /oradata/dgbackup/xxx/xxx01.ctl   /oradata/xxx/control01.ctl  

五、啓動備庫進行增量恢復

[sql] view plain copy

  1. -----啓動數據庫到nomount          
  2. startup nomount;  
  3. ----啓動數據庫到mount  
  4. alter database mount standby database;  
  5.   
  6. -----rman增量恢復  
  7. catalog start with '/oradata/dgbackup/inscndbkf';    
  8. recover database noredo;  

六、啓動備庫複製應用

[sql] view plain copy

  1. sqlplus  / as sysdba  
  2. ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;  
相關文章
相關標籤/搜索