校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > [Oracle] Data Guard 之 淺析Switchover與Failover

[Oracle] Data Guard 之 淺析Switchover與Failover

熱門標簽:征服眼公司地圖標注 word地圖標注方向 征服者火車站地圖標注 外呼線路外顯本地號碼 阿爾巴尼亞地圖標注app 美圖秀秀地圖標注 人工智能地圖標注自己能做嗎 百度地圖標注素材 開封智能外呼系統廠家

Data Guard主從庫之間的角色切換分為以下兩種:
1)Switchover
Swithchover通常都是人為的有計劃的進行角色互換,比如升級等。它通常都是無損的,即不會有數據丟失。其執行主要分為兩個階段:
1.Primary轉為Standby
2.Standby(之一)轉為Primary
2)Failover
Failover是指由于Primary故障無法短時間恢復,Standby不得不充當Primay的角色,如果處于最高性能模式,這種切換很有可能導致數據丟失。

下面分別演示物理Standby的Switchover和Failover(邏輯Standby的切換類似)。

1. 物理Standby執行Switchover
1) 確認pirmary是否可以切換為standby
PRIMARY>select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
TO STANDBY
2) 切換primary為standby
PRIMARY>alter database commit to switchover to physical standby;
3) 啟動原primary到mount狀態
此時原primary就是以standby身份在運行了。
4) 確認standby是否可以切換為primary
STANDBY>select switchover_status from v$database;
SWITCHOVER_STATUS
--------------------
TO PRIMARY
5) 切換standby為primary
STANDBY>alter database commit to switchover to primary;
Database altered.
STANDBY>alter database open;
Database altered.
6) 驗證
PRIMARY>select database_role from v$database;
DATABASE_ROLE
----------------
PHYSICAL STANDBY
STANDBY>select database_role from v$database;
DATABASE_ROLE
----------------
PRIMARY
可以看到原來的primary現在變成standby,原來的standby變成primary了。
檢查新的primary的log_archive_dest參數的設置是否正確:
STANDBY>show parameter log_archive_dest_2
NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
log_archive_dest_2            string      service=O01DMS0 ARCH VALID_FOR
                                                              =(ONLINE_LOGFILES,PRIMARY_ROLE
                                                               ) DB_UNIQUE_NAME=O01DMS0
STANDBY>show parameter log_archive_dest_state_2
NAME                                 TYPE        VALUE
------------------------------------ ----------- ---------------------
log_archive_dest_state_2             string      ENABLE
在新primary端做log switch:
STANDBY>alter system switch logfile;
System altered.
STANDBY>select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
           479
在新standby端查看:
PRIMARY>select max(sequence#) from v$archived_log;
MAX(SEQUENCE#)
--------------
           479
兩邊的歸檔日志的最大序號吻合,說明switchover成功。

2. 物理Standby執行Failover
1). 檢查standby歸檔文件是否連續
STANDBY>SELECT THREAD#, LOW_SEQUENCE#, HIGH_SEQUENCE# FROM V$ARCHIVE_GAP;
no rows selected
這一步很重要,必須確保所有已生成的歸檔文件都已傳到standby服務器。
如果上述語句有返回結果,則必須把缺失的歸檔文件從primary端復制到standby端,然后通過以下命令將其加入數據庫:
STANDBY>alter database register physical logfile 'filespec'
2). 檢查standby歸檔文件是否完整
STANDBY>SELECT UNIQUE THREAD# AS THREAD, MAX(SEQUENCE#) OVER (PARTITION BY threa
d#) AS LAST from V$ARCHIVED_LOG;
    THREAD       LAST
---------- ----------
         1        479
通過上述語句可以查出standby目前序號最大的歸檔日志為479,如果在primary端有比479更大的歸檔日志,把它們拷貝過來,然后通過以下命令將其加入數據庫:
STANDBY>alter database register physical logfile 'filespec'
3)啟動failover
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE FINISH FORCE;4)切換為primaryTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY;
ALTER DATABASE OPEN;STANDBY>select database_role from v$database;DATABASE_ROLE----------------PRIMARY

標簽:孝感 六安 葫蘆島 泰安 宜春 淮南 酒泉 海北

巨人網絡通訊聲明:本文標題《[Oracle] Data Guard 之 淺析Switchover與Failover》,本文關鍵詞  Oracle,Data,Guard,之,淺析,Switchover,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《[Oracle] Data Guard 之 淺析Switchover與Failover》相關的同類信息!
  • 本頁收集關于[Oracle] Data Guard 之 淺析Switchover與Failover的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 和顺县| 汕头市| 金堂县| 儋州市| 安达市| 湟中县| 渑池县| 启东市| 广南县| 乐安县| 仁怀市| 镶黄旗| 宣武区| 凤山县| 南雄市| 保靖县| 长丰县| 资兴市| 黎川县| 霍州市| 大理市| 项城市| 佛山市| 吉木萨尔县| 横山县| 诸城市| 黄平县| 珲春市| 忻城县| 始兴县| 伊春市| 利津县| 曲阜市| 台山市| 石屏县| 外汇| 湟源县| 睢宁县| 新丰县| 双柏县| 绥中县|