Data Guard高階玩法:通過閃回恢復switchover主庫
我們的大體思路就是,在主庫我們標記一下資料狀態,然後做Switchover之後,我們truncate 某個表中的資料,也就間接模擬了一個資料庫故障,這個時候需要做回退,需要把主庫的資料都恢復到切換前的狀態,這個聽起來還是比較複雜的場景,備庫還可以一如既往的跟著主庫嗎?
我們用圖表來說明一下:
首先是一個主備庫的環境:
switchover是計劃內的任務,就是主切備,備切主。
這個時候發現切換出現了問題,我們需要緊急回退,需要回退到切換前的狀態,要知道此時的主庫已經不是原來的主庫,備庫也不是原來的備庫了。閃回是否依舊可行,備庫是否可以依舊選擇一個新的斷點可以重新同步?
我們來通過實戰演練一下,當然這個操作需要保證主備庫都開啟了閃回資料庫的特性,在11g中開啟已經不再需要重啟資料庫,open階段即可隨時開關。
主庫的操作如下:
我們建立一個表test,插入2行記錄。
SQL> select count(*)from n1.test;
COUNT(*)
----------
2
然後我們得到一個初始的SCN值。
SQL> select current_scn,database_role,flashback_on from v$database;
CURRENT_SCN DATABASE_ROLE FLASHBACK_ON
----------- ------------------------------ ------------------------------------
2084486 PRIMARY YES
檢查DG Broker的狀態,這裡snewtest2是主庫,newtest2是備庫。
DGMGRL> show configuration;
Configuration - dg_newtest2
Protection Mode: MaxPerformance
Databases:
snewtest2 - Primary database
newtest2 - Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
然後我們開始測試這個方案。
備庫的操作如下:
DGMGRL> switchover to newtest2;
Performing switchover NOW, please wait...
New primary database "newtest2" is opening...
Operation requires startup of instance "newtest2" on database "snewtest2"
Starting instance "newtest2"...
...
切換之後檢視DG Broker的狀態,也看到主備庫的角色已經調整過來了。
DGMGRL> show configuration;
Configuration - dg_newtest2
Protection Mode: MaxPerformance
Databases:
newtest2 - Primary database
snewtest2 - Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
這個時候我們檢視錶test的資料。
SQL> select count(*)from n1.test;
COUNT(*)
----------
2
然後開始破壞。直接truncate
SQL> truncate table n1.test;
Table truncated.
這個時候業務層面發現了資料的連鎖錯誤,準備開始回退到初始的狀態。
SQL> shutdow immediate
SQL> startup mount
開始閃回資料庫,恢復到初始的資料狀態
SQL> flashback database to scn 2084486;
Flashback complete.
這個時候需要resetlogs
SQL> alter database open resetlogs;
Database altered.
原來的主庫操作如下:
先初步驗證,發現這個時候DG Broker驗證失敗。
DGMGRL> show configuration;
Configuration - dg_newtest2
Protection Mode: MaxPerformance
Databases:
newtest2 - Primary database
snewtest2 - Physical standby database
Error: ORA-16810: multiple errors or warnings detected for the database
Fast-Start Failover: DISABLED
Configuration Status:
ERROR
我們關閉日誌的應用。
SQL> recover managed standby database cancel;
然後開始閃回到指定的SCN
SQL> flashback database to scn 2084486;
Flashback complete.
完成之後,重新開啟日誌應用。
SQL> recover managed standby database disconnect from session;
Media recovery complete.
這個時候操作成功,我們就直接開啟ADG,把資料庫開啟到open狀態。
SQL> alter database open;
稍作等待,就會發現備庫的狀態為READ ONLY WITH APPLY.
SQL> select open_mode from v$database;
OPEN_MODE
----------------------------------------
READ ONLY WITH APPLY
DGMGRL> DGMGRL> show configuration;
Configuration - dg_newtest2
Protection Mode: MaxPerformance
Databases:
newtest2 - Primary database
snewtest2 - Physical standby database
Fast-Start Failover: DISABLED
Configuration Status:
SUCCESS
這個過程讓我對閃回的強大功能又有了新的認識和了解,希望在一些極端場景中依然能夠幫助到你們。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23718752/viewspace-2124543/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Data Guard高階玩法:通過閃回恢復failover備庫AI
- 【DG】Data Guard主備庫Switchover切換
- 玩轉Data Guard的switchover後切不回主庫
- DATA GUARD主庫丟失資料檔案的恢復(2)
- DATA GUARD主庫丟失資料檔案的恢復(3)
- DATA GUARD主庫丟失資料檔案的恢復(1)
- 閃回查詢恢復過程
- data guard switchover on solaris 10
- DATA GUARD物理備庫的SWITCHOVER切換
- Oracle -- 閃回恢復區---實踐1---閃回庫Oracle
- Oracle 12c Data guard 物理主備庫正常切換(switchover)流程Oracle
- Oracle 11g Data guard 物理主備庫正常切換(switchover)流程Oracle
- In Data Guard,choose switchover or failover?AI
- 不停機 data guard 以及 switchover
- Oracle 19C Data Guard基礎運維-07 failover後閃回恢復dg架構Oracle運維AI架構
- 【備份恢復】閃回資料庫(一)閃回資料庫的管理資料庫
- 第十二章、RMAN 高階恢復主題 + 第13 章、從使用者錯誤中恢復,閃回技術
- 資料庫高階恢復資料庫
- Oracle資料庫的閃回恢復區Oracle資料庫
- Oracle閃回恢復區Oracle
- Data Guard Switchover and Failover Best PracticesAI
- 【備份恢復】閃回資料庫(五)RMAN 命令列閃回資料庫資料庫命令列
- 【備份恢復】閃回資料庫(二) 基於 SCN 閃回資料庫資料庫
- Data Guard主備庫切換
- Oracle 11g Data guard 物理備庫應急切換(failover)後原有主庫的重建(通過RMAN恢復)OracleAI
- Oracle9i Flashback Query 閃回查詢總結 --- (通過SCN恢復)Oracle
- DATA GUARD物理STANDBY的 SWITCHOVER切換
- Data Guard跳歸檔恢復的案例
- 【備份恢復】閃回資料庫(三)基於時間戳閃回資料庫資料庫時間戳
- 【備份恢復】 閃回技術之閃回刪除
- 10g Data Guard physical standby的主備庫角色轉換測試(switchover & failover)AI
- 【備份恢復】閃回資料庫(四)基於可靠還原點閃回資料庫資料庫
- DATA GUARD物理STANDBY的 SWITCHOVER切換[zt]
- Oracle DBA2 ---- 閃回恢復Oracle
- 【備份恢復】閃回技術之閃回版本查詢
- (f)--閃回恢復區-- 並行載入對閃庫的影響並行
- 通過duplicat恢復資料庫資料庫
- Oracle 11g Data guard 物理備庫故障恢復重建例項Oracle