[Oracle]Data Gardの浅分析Switch overとFailover


Data Gard主従庫間のキャラクター切り替えは、1)Switch overSwithchoverは通常、人為的に計画的にキャラクター交換を行います。例えば、アップグレードなどです。それは通常無傷です。つまりデータがなくなることはありません。その実行は主に二つの段階に分けられます。1.PrimaryがStation by.Standby by(1)Primary 2に移行します。FailoverFailoverとはPrimaryの故障で短時間で回復できなくなり、StandbyがPrimeyの役割をしなければなりません。最高の性能モードであれば、このような切り替えはデータが失われる可能性があります。
物理StandbyのSwitchoverとFailover(論理Standbyの切り替えが似ている)をそれぞれ示します。
1.物理Standby Switchover 1を実行して、pirmaryがstandbyPRIMARY>select switchover_に切り替えられるか確認します。status from v$database;SWEET OVER_STATU-S--------------T-TO STANDBY 2)primaryをstandbyPRIMARYに切り替えるalter database comit to switchover to physical standby;3)元プリマを起動してmountの状態にすると、元プリマはstandbyとして動作します。4)standbyがprimay STANDBYに切り替えられるか確認する。select switchover_status from v$database;SWEET OVER_STATU-S--------------T-TO PRIMARY 5)切り替えstandbyはprimaySTANDBYです。alter database commt to switchover to primaryです。Database altered.STANDBY>alter database open;Database altered.6)PRIMARYを検証します。select database。role from v$database;DATABASE_ROLE------------PHYSICAL STANDBYSTANDBY>select database_role from v$database;DATABASE_ROLE------------ PRIMARYは元のprimaryが今はstandbyになり、元のstandbyがprimaryになりました。新しいprimaryのロゴをチェックします。archive_destパラメータの設定が正しいかどうか:STANDBY>show parameter loguarchive_dest_2 NAME                                 タイプ        VALE----------------------------------------------log_archive_dest_2            ストリングス      service=O 01 DMS 0 ARCH VAILID_FOR                                                              =(ONLINELOGFILES、PRIMARY_ROLE                                                               ) DB_UNIQUE_NAME=O 01 DMS 0 STANDBY>show parameter loguarchive_dest_state_2 NAME                                 タイプ        VALE-------------------------------log_archive_dest_state_2             ストリングス      ENABLEは新しいprimaryの端でlogs witchをします。STANDBY;alter system witch logfile;System altered.STANDBY>select max(sequence芫)from v$archived_ロゴMAX(SEQUENCE〓〓〓)---------------------------           479新しいstandbyの端に表示されます。PRIMARY>select max(sequence菗)from v$archived_ロゴMAX(SEQUENCE〓〓〓)---------------------------           479両サイドのアーカイブログの最大番号が一致し、switchoverの成功を説明します。
2.物理Standby実行Failover 1).standbyアーカイブファイルが連続してSTANDBYであるかどうかを確認するSEQUENCE菵,HIGH_SEQUICE龚FROM V$ARCHIVE_GAP;no rows selectedはこのステップが重要であり、すでに生成されたアーカイブファイルがすべてstandbyサーバに転送されたことを確認しなければなりません。上記の文に戻り結果がある場合は、欠落したアーカイブファイルをprmaryからstandbyにコピーして、次のコマンドでデータベースに追加します。STANDBY>alter database register physical logfile'filespec'2。standbyアーカイブファイルが完全なSTANDBYであるかどうかを確認します。SELECT UNIQTHREAD。MAX(SEQUNCE铉)OVER(PARTTION BY thread嗳)AS LAST from V$ARCHIVED_LOG;    THREAD       LAST----------------         1        479上記の文からstandbyの現在番号の最大のアーカイブログが479であることが分かります。もしprimaryの端に479より大きいアーカイブログがあれば、コピーして、次のコマンドでデータベースに追加します。4)prmaryTER DATABASE COMMIT TO SWEET TO PRIMARYに切り替える;ALTER DATABASE OPENSTANDBY>select database_role from v$database;DATABASE_ROLE-------------P RIMARY