您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關DG -- READ ONLY模式怎么打開物理Standby,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
物理Standby 概念
DG通過REDO應用來維護物理Standby數據庫。
通常在物理Standby沒有執行REDO應用操作的時候,可以將物理Standby數據庫以READ ONLY模式打開,如果數據庫中指定了Flashback Area的話,甚至還可以被臨時性的置為READ WRITE模式,操作完之后再通過Flashback Database特性恢復回READ WRITE前的狀態,以便繼續接收Primary端發送的REDO并應用。
REDO應用。物理Standby通過REDO應用來保持與Primary數據庫的一致性,所謂的REDO應用,實質是通過Oracle的恢復機制,應用歸檔文件(或Standby Redologs文件)中的REDO數據。恢復操作屬于塊對塊的應用。如果正在執行REDO應用的操作,Oracle數據庫就不能被Open。
READ ONLY模式打開。以READ ONLY模式打開后,可以在Standby數據庫執行查詢或備份等操作(變相減輕Primary數據庫壓力)。此時Standby數據庫仍然能夠繼續接收Primary數據庫發送的REDO數據,不過并不會應用,直到Standby數據庫重新恢復REDO應用。
也就是說在READ ONLY模式下不能執行REDO應用,REDO應用時數據庫肯定處于未打開狀態。如果需要的話,你可以在兩種狀態間轉換,如先應用REDO,然后將數據庫置為READ ONLY狀態,需要與Primary同步時再次執行REDO應用命令,切換回REDO應用狀態。呵呵,人生就是循環,數據庫也是一樣。
提 示: Oracle 11g版本中增強物理Standby的應用功能,在11g版本中,物理Standby可以在OPEN READ ONLY模式下繼續應用REDO數據,這就極大地提升了物理Standby數據庫的應用場合。
READ WRITE模式打開。如果以READ WRITE模式打開,那么Standby數據庫將暫停從Primary數據庫接收REDO數據,并且暫時失去災難保護的功能。當然,以READ WRITE模式打開也并非一無是處,如你可能需要臨時調試一些數據,但又不方便在正式庫中操作,那就可以臨時將Standby數據庫置為READ WRITE模式,操作完之后將數據庫閃回到操作前的狀態(閃回之后,Data Guard會自動同步,不需要重建物理Standby,不過如果從另一個方向看,沒有啟動閃回,那就回不到READ WRITE前的狀態了)。
--===========================================
通常情況下物理standby處于mounted模式
當standby正常應用redo數據時其打開模式處于mounted模式
SQL>select open_mode from v$database;
OPEN_MODE
———-
MOUNTED
要將物理Standby數據庫從REDO應用狀態啟動到READ ONLY狀態,并不能直接ALTER DATABASE OPEN打開數據庫,首先要取消redo應用
SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
然后再打開數據庫:
SQL>alter database open;
查詢打開模式
SQL>select open_mode from v$database;
OPEN_MODE
———-
READ ONLY
要從OPEN狀態切換回REDO應用狀態,并不需要SHUTDOWN數據庫再啟動,直接執行啟用REDO應用的語句即可
SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;
--============================================
模擬過程:修改主庫數據-->遞交,切換日志--> 日志主備傳輸 -->備庫redo應用 -->只讀模式打開備庫--> 讀數據
DG 最大性能模式
主庫
SQL> update scott.emp set sal=2000 where empno=7369;
1 row updated.
SQL> commit;
Commit complete.
SQL> alter system switch logfile;
System altered.
SQL> select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
14
物理備庫
SQL> select open_mode from v$database;
OPEN_MODE
----------
MOUNTED
SQL> select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
14
SQL> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
Database altered.
SQL> alter database open;
Database altered.
SQL> select sal from scott.emp where empno=7369;
SAL
----------
2000
--======================================================
以上就是DG -- READ ONLY模式怎么打開物理Standby,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。