11gR2 Active Data Guard 閃回 - flashback database / snapshot standby - 2

tolywang發表於2014-05-06

二,11g 使用snapshot方式設定Data Guard閃回

     snapshot standby是11g引入的新特性,它不需要開啟flashback database特性,就可以讓physical standby資料庫以read-write模式開啟,而後可以退回到standby模式,所有open模式下的資料庫中的更改的資料都會還原到之前的狀態。

     顯然,原理上Snapshot Standby功能是基於閃回資料原理的,因此任何導致閃回資料庫無法回退的動作在這裡也是被限制的,否則Snapshot Standby資料庫將無法回到曾經的備庫恢復狀態。
比如:
a.  控制檔案重建
b.  資料檔案shrink
c.  表空間刪除
d.  介質損壞


2.1  Convert到snapshot standby的步驟

1) 如果資料庫是RAC, 那麼關閉所有節點,開啟一個節點上的例項到mount模式。
SQL> shutdown immediate;
SQL> startup mount; 

2) 關閉自動應用恢復(managed recovery)
SQL> alter database recover managed standby database cancel;

3) Convert standby資料庫到snapshot standby.
在convert之前,我們先查詢一下物理standby資料庫flashback_on是否開啟,發現是NO . 
SQL> select flashback_on from v$database;
 
FLASHBACK_ON
——————
 NO

Convert到snapshot standby,再次檢視資料庫的falshback_on狀態。
SQL> alter database convert to snapshot standby;
SQL> alter database open;
 
SQL> select flashback_on from v$database;
 
FLASHBACK_ON
----——————
RESTORE POINT ONLY


可以發現flashback_on狀態變成 RESTORE POINT ONLY,這和使用擔保還原點(Guaranteed Restore Points)狀態類似 .也就是說convert to snapshot standby命令相當於建立了一個擔保還原點, 不過這個還原點的名字是什麼 ? Oracle後期做convert to physical standby的時候又是如何找到還原點並操作的 ?

我們查詢 V$RESTORE_POINT檢視,可以發現一個NAME值為"SNAPSHOT_STANDBY_REQUIRED_05/05/2014 09:05:50"的還原點,其他欄位如TIME, SCN分別對應了時間及當時的SCN, 欄位GUARANTEE_FLASHBACK_DATABASE為YES, 表示上面的猜測(相當於建立了一個擔保還原點)是正確的。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/35489/viewspace-1155135/,如需轉載,請註明出處,否則將追究法律責任。

相關文章