Oracle學習之DATAGUARD(十一) snapshot database

來源:互聯網
上載者:User

標籤:snapshot standby

   Snapshot Standby,此功能可將備庫置身於"可讀寫狀態"用於不方便在生產環境主庫中測試的內容,比如類比上線測試等任務。當備庫讀寫狀態下任務完成後,可以非常輕鬆的完成Snapshot Standby資料庫角色切換回備庫角色,恢複與主庫資料同步。在Snapshot Standby資料庫狀態下,備庫是可以接受主庫傳過來的日誌,但是不能夠將變化應用在備庫中。 

   物理備庫要轉換成Snapshot的前提條件

  • 停止備庫上的日誌應用。

  • 備庫開啟資料庫閃回功能

下面示範,如果切換成snapshot。

1. 停止備庫上的日誌應用。

DGMGRL> edit database 11gdg2 set state=APPLY-OFF;Succeeded.DGMGRL>

2. 開啟備庫資料庫閃回功能

SQL>  alter database flashback on;Database altered.


3.將備庫轉為snapshot

DGMGRL> CONVERT DATABASE 11GDG2 TO SNAPSHOT STANDBY;Converting database "11gdg2" to a Snapshot Standby database, please wait...Database "11gdg2" converted successfully

4. 此時,我們在主庫上做些資料修改

SQL> select count(*) from t1;  COUNT(*)----------56SQL> insert into t1 select * from t1;56 rows created.SQL> commit;Commit complete.

5. 在備庫中修改資料

SQL> conn / as sysdbaConnected.SQL> select open_mode from v$database;OPEN_MODE------------------------------------------------------------READ WRITESQL> conn scott/tigerConnected.SQL> create table t2 as select * from t1;Table created.SQL> select count(*) from t2;  COUNT(*)----------56SQL>


6. 將snapshot轉為physical standby

DGMGRL> CONVERT DATABASE 11GDG2 TO PHYSICAL STANDBY;Converting database "11gdg2" to a Physical Standby database, please wait...Operation requires shutdown of instance "dgtst" on database "11gdg2"Shutting down instance "dgtst"...Database closed.Database dismounted.ORACLE instance shut down.Operation requires startup of instance "dgtst" on database "11gdg2"Starting instance "dgtst"...ORACLE instance started.Database mounted.Continuing to convert database "11gdg2" ...Operation requires shutdown of instance "dgtst" on database "11gdg2"Shutting down instance "dgtst"...ORA-01109: database not openDatabase dismounted.ORACLE instance shut down.Operation requires startup of instance "dgtst" on database "11gdg2"Starting instance "dgtst"...ORACLE instance started.Database mounted.Database "11gdg2" converted successfully

將備庫開啟

SQL> alter database open read only;Database altered.

7. 檢查備庫中t2表是否還存在

SQL> conn scott/tigerConnected.SQL> select * from t2;select * from t2              *ERROR at line 1:ORA-00942: table or view does not existSQL>

8.看看轉換到snapshot後,對主庫做的更改資料有沒有被應用。

SQL> select count(*) from t1;  COUNT(*)----------       112SQL>

和第4步結論是一樣的 。


本文出自 “叮咚” 部落格,請務必保留此出處http://lqding.blog.51cto.com/9123978/1682805

Oracle學習之DATAGUARD(十一) snapshot database

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.