DG中switchover切換操做

問題描述:咱們配置DG的目的就是爲了在主庫出現故障時,備庫可以提供服務,保證業務的正常運行,switchover是用戶有計劃的進行停機切換,可以保證不丟失數據,我記錄一下我進行switchover中的操做。sql

1.主庫(orcl) 備庫(orclstd) ,查看主庫上的狀態,角色orcl是主庫session

SQL> select switchover_status,database_role from v$database;spa

SWITCHOVER_STATUS    DATABASE_ROLE3d

-------------------- ----------------日誌

TO STANDBY      PRIMARYblog

2.switch轉換主庫orcl爲物理備庫,並查看更改後的角色文檔

SQL> alter database commit to switchover to physical standby with session shutdown;同步

SQL> startup mount;it

SQL> select database_role from v$database;io

 

 3如下都是在orclstd備庫上操做,同樣的先查詢狀態角色是否具有切換的條件,注意:上面查詢結果顯示爲TO PRIMARY  SESSIONS ACTIVE代表能夠切換成主庫

SQL> select switchover_status,database_role from v$database;

SWITCHOVER_STATUS    DATABASE_ROLE

------------------------------------

TO PRIMARY       PHYSICAL STANDBY

4.切換orclstd(原備庫)爲物理主庫,並查詢更改後的角色和狀態,很顯然個人switchover_status狀態爲RESOLVABLE GAP,大概就是還有歸檔沒有傳輸過去一類的

SQL> alter database commit to switchover to primary with session shutdown;

SQL> alter database open;

SQL> select switchover_status,database_role,open_mode from v$database;

 

 5.網上找了不少篇文檔,貌似全都是同樣抄的,SQL> alter system flush redo to 'orcl'; 都是這個命令,刷新redo 到新備庫去,可是個人一直報錯

 

 這個名字須要加上單引號,不然識別不了,錯誤提示個人db_unique_name再也不設置內,我查詢了一下設置,服了沒毛病啊,這一點一直不清楚怎麼回事

 

 6.在同事的幫助下,查看了pfile的設置,將log_archive_dest_2='SERVICE名字設置爲新的備庫orcl,可能由於orclstd是我老的備庫,service名字沒有改,這裏改一下,或者在sqlplus 中進行alter system 設置也能夠

 

 

 

 7.修改過以後,新的備庫可以接受到歸檔,而後能夠進行同步了

SQL> select switchover_status,database_role from v$database;

 

8.驗證:在新主庫上切換日誌,並查詢最大序列號爲62

SQL> alter system archive log current;

SQL> select max(sequence#) from v$archived_log;

 

 

9.一樣的在主庫查詢,同樣的都是62,驗證成功,switchover切換完成

SQL> select max(sequence#) from v$archived_log;

 

相關文章
相關標籤/搜索