中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何解決oracle11gR2 DataGuard switchover切換的兩個錯誤狀態

發布時間:2021-11-20 11:55:59 來源:億速云 閱讀:687 作者:小新 欄目:云計算

這篇文章給大家分享的是有關如何解決oracle11gR2 DataGuard switchover切換的兩個錯誤狀態的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

在公司的測試環境搭建了一套oracle11gR2  DataGuard,用來預生產測試。在Data Guard中分為兩種冗余切換,一種是switchover無損切換,一種是failover丟棄切換。

所謂switchover是針對failover而言的,它是一種無損切換,切換的過程中不會丟失數據。 可以平滑的使主備互換并且2個庫都可以正常使用。 切換過程:主庫->切換->備庫->檢查狀態->原備庫->切換->主庫->再檢查狀態

應用場合:主庫因性能或其他原因需要調整升級,這時可以切換后用新主庫對外提供服務。

關于DG的搭建過程這里就不詳述了,下面就切換過程中出現的兩個錯誤狀態進行分析和解決。

一、SWITCHOVER LATENT狀態

在備庫上查詢數據庫角色和狀態

SYS@standby> select database_role,switchover_status,open_mode from v$database;

DATABASE_ROLE SWITCHOVER_STATUS    OPEN_MODE

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

PHYSICAL STANDBY SWITCHOVER LATENT    READ ONLY

發現是switchover latent而不是to primary

這個問題是說切換處于pending模式,沒有完成無法回到主庫。當你查看ALERT日志時,也沒有發現什么報錯,是不是要繼續等下去呢?其實不需要等待,出現這個問題的原因就是日志沒有歸檔,所以備庫與主庫不一致,需要恢復。當備庫恢復到和主庫一致后,狀態就會成為to_primary

驗證一下這個問題是不是上面所說的原因,你可以繼續在備庫上執行下面這句

sys@standby>  ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSION SHUTDOWN;

ALTER DATABASE COMMIT TO SWITCHOVER TO PRIMARY WITH SESSION SHUTDOWN

*

ERROR at line 1:

ORA-16139: media recovery required

這里提示需要介質恢復。

根據以上的分析和定位,我們要解決這個問題,需要在備庫上切斷應用,啟用日志同步

SYS@standby> ALTER DATABASE RECOVER MANAGED STANDBY DATABASE DISCONNECT FROM SESSION;

Database altered.

SYS@standby> SELECT SWITCHOVER_STATUS FROM V$DATABASE;

SWITCHOVER_STATUS

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

TO PRIMARY

顯示為TO PRIMARY,這時看狀態就正常了。

SYS@standby> alter database commit to switchover to primary with session shutdown;

Database altered.

SYS@standby> select database_role,switchover_status,open_mode from v$database;

DATABASE_ROLE SWITCHOVER_STATUS    OPEN_MODE

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

PRIMARY  NOT ALLOWED      MOUNTED

打開數據庫

sys@standby>alter database open;

切換一下日志

sys@standby> alter system switch logfile ;

System altered.

再檢查一下日志的狀態

SYS@standby> select sequence#,standby_dest,archived,applied,status from v$archived_log;

SEQUENCE# STA ARC APPLIED   S

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

4 NO  YES YES     A

5 NO  YES YES     A

6 NO  YES YES     A

7 NO  YES YES     A

8 NO  YES YES     A

9 NO  YES YES     A

10 NO  YES YES     A

11 NO  YES YES     A

11 NO YES YES     A

10 NO YES YES     A

12 NO  YES YES     A

發現都是YES,說明已經同步了。

二、FAILED DESTINATION狀態

當備庫切換為主庫后,發現切換狀態為FAILED DESTINATION

SYS@primary> select database_role,switchover_status,open_mode from v$database;

DATABASE_ROLE SWITCHOVER_STATUS    OPEN_MODE

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

PRIMARY  FAILED DESTINATION   READ WRITE

發現是FAILED DESTINATION而不是to standby

這個問題說明主庫連接備庫有問題,可以具體查看一下ALERT日志,看看是怎么回事

Error 12541 received logging on to the standby

Check whether the listener is up and running.

Errors in file /u01/app/oracle/diag/rdbms/primary/primary/trace/primary_arc2_2546.trc:

ORA-12541: TNS:no listener

PING[ARC2]: Heartbeat failed to connect to standby 'standby'. Error is 12541.

這里說明備庫的監聽有問題,重啟備庫監聽,再查狀態就變成to standby了

SYS@primary> select database_role,switchover_status,open_mode from v$database;

DATABASE_ROLE SWITCHOVER_STATUS    OPEN_MODE

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

PRIMARY  TO STANDBY      READ WRITE

當然導致FAILED DESTINATION的原因會有很多,比如log_archive_dest_2 參數的屬性值還有口令文件的配置出錯或者權限問題等。

總之出了問題,面對問題分析問題就對了,從中你可以學到很多。

附Switchover_Status值的含義

NOT ALLOWED

當前的數據庫不是帶有備用數據庫的主數據庫

PREPARING DICTIONARY

該邏輯備用數據庫正在向一個主數據庫和其他備用數據庫發送它的重做數據,以便為切換做準備

PREPARING SWITCHOVER

接受用于切換的重做數據時,邏輯備用配置會使用它

RECOVERY NEEDED

備用數據庫還沒有接收到切換請求

SESSIONS ACTIVE

在主數據庫中存在活動的SQL會話;在繼續執行之前必須斷開這些會話

SWITCHOVER PENDING

適用于那些已收到主數據庫切換請求但是還沒有處理該請求的備用數據庫

SWITCHOVER LATENT

切換沒有完成并返回到主數據庫

TO LOGICAL STANDBY

主數據庫已經收到了來自邏輯備用數據庫的完整的字典

TO PRIMARY

該備用數據庫可以轉換為主數據庫

TO STANDBY

該主數據庫可以轉換為備用數據庫

感謝各位的閱讀!關于“如何解決oracle11gR2 DataGuard switchover切換的兩個錯誤狀態”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

徐州市| 全南县| 阳高县| 长泰县| 内黄县| 抚顺市| 视频| 和平县| 逊克县| 玉屏| 茶陵县| 南投市| 金溪县| 开远市| 阿巴嘎旗| 达州市| 陇南市| 余姚市| 广东省| 弥勒县| 黄浦区| 临颍县| 新乡县| 新乡市| 连城县| 淅川县| 厦门市| 文成县| 馆陶县| 青河县| 会理县| 大悟县| 寿阳县| 乐东| 洛隆县| 信宜市| 沈阳市| 遵义市| 嘉善县| 麻江县| 阿拉善右旗|