23
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Oracle Exadata Database Service: 複数スタンバイ Data Guard 構成してみてみた

Last updated at Posted at 2025-02-25

Oracle Exadata Database Service では、複数のスタンバイ・データベースを作成できます。この機能拡張により、プライマリ・データベースにリンクされた複数のローカル・スタンバイ・データベースおよびリモート・スタンバイ・データベースを作成および管理できるため、データ保護とディザスタ・リカバリの両方に柔軟に対応できます。ローカル・スタンバイ・データベースはデータ損失の最小化に役立ちますが、リモート・スタンバイ・データベースはリージョンの障害から保護します。
Map画像01.jpg
Oracle Data Guard は、1 つ以上のスタンバイ データベースを作成、維持、管理、監視し、運用中の Oracle データベースが災害やデータ破損に耐えられるようにする包括的なサービス セットを提供します。
Oracle Data Guard は、これらのスタンバイ データベースを本番データベースのコピーとして維持します。その後、計画停止または計画外停止により本番データベースが使用できなくなった場合、Oracle Data Guard は任意のスタンバイ データベースを本番ロールに切り替えて、停止に関連するダウンタイムを最小限に抑えることができます。Oracle Data Guard は、従来のバックアップ、リストア、およびクラスタ技術と組み合わせて使用​​することで、高度なデータ保護とデータ可用性を実現できます。Oracle Data Guard トランスポート サービスは、Oracle Streams や Oracle GoldenGate などの他の Oracle 機能でも使用され、ソース データベースから 1 つ以上のリモート宛先への REDO の効率的で信頼性の高い転送を実現します。
image.png
Active Data Guard では次の主な機能があります。

  • リアルタイム問い合わせとDMLオフロード: リアルタイム問い合わせとデータ操作言語では、問い合わせ、レポート、随時更新のためにスタンバイ・データベースを使用するため、プライマリ・データベースに影響を与えません。
  • インメモリー・データベース・レプリケーション: インメモリーREDOレプリケーションでは、ディスク破損などの根本的な破損から確実に分離でき、レプリケートされたデータブロックの包括的な自動検証機能を利用できます。
  • 自動ブロック修復: スタンバイ・データベースの破損したデータベースをユーザーに意識させることなく自動的にリカバリします。
  • アプリケーション・コンティニュイティ: リカバリ可能な停止の後に処理中のデータベース・トランザクションをリカバリすることで、エンドユーザーやアプリケーションへの停止の影響を排除します。
  • グローバル・データ・サービス(GDS): 接続リクエストに対するロード・バランシングを提供して複数のレプリケートされたデータベースにサービス管理を分散し、Active Data Guardの読取りワークロードまたは読取り/書込みワークロードに応じて接続を有効にします。
  • Oracle Globally Distributed Database: データセットのセグメントを複数のデータベース(シャード・データベース)に分散し、オンプレミスまたはクラウド上のさまざまなコンピュータに配置します。また、グローバルに分散した直線的にスケーラブルなマルチモデル・データベースを実現します。
    image.png
    ということで、Exadata Database Service を複数使用して複数スタンバイData Guard構成して、Switchover, Failover, Reinstate して みてみます。

■ 構成図

今回 4つの Databseで Data Guard Groupを構成し、各 Database へ Zero Data Loss Autonomous Recovery Service (ZRCV) の自動バックアップを設定します。
構成図.png
Network関連は事前に作成しておき、今回はExadata Infrastructureから作成します。
 ・ Remote VCN Peering 設定
 ・ DNSピアリング(Forwarding) 設定

■ 前提条件

Data Guard を有効にする場合、新しいスタンバイ データベースをホストするために、スタンバイ インスタンスに新しいデータベース ホームを作成する必要があります。または、スタンバイ インスタンスの既存のデータベース ホーム内にスタンバイ データベースをプロビジョニングすることもできます。スタンバイ システムに必要なリソースの作成については、次のトピックを参照
 ・ Exadata Cloud InfrastructureでOracle Data Guardを使用するための前提条件
 ・Data Guard のネットワーク要件
 ・パスワード要件
 ・Exadata Cloud Infrastructure および Data Guard の既知の問題

Oracle Data Guard の詳細について、Oracle Database ドキュメントポータルを参照
Oracle Data Guard の概念と管理
Oracle Data Guard Broker の概念

■ Exadata Database Service 作成

前回作成した Exadata Database Serviceを4つ使用します。

■ Exadata Database Service作成確認

今回、図面のように 4つの Exadata Database VM Clusterを作成しておきます。

● VM Cluster確認

1) VMCluster_Tokyo

02_東京ExaDB-D-VMCluster作成10.jpg

2) VMCluster_Aoyama
01_DBHome追加01.jpg

3) VMCluster_Osaka
01_大阪ExaVM02-DatabaseHome作成01.jpg

4) VMCluster_Umeda
01_DBhome作成01.jp**g

● Database: CDB_Tokyo 確認

Databaseは、作成したVMCluster_Tokyo から、他の VM Cluster へ Data Guardアソシエーションで Standby Databaseを作成していきます。

・CDB_Tokyo確認
03_東京ExaDB-D-DB作成04-2.jpg

■ スタンバイ CDB_Osaka 追加

● Database Home追加

1) VM Cluster: Database Home画面

01_大阪ExaVM02-DatabaseHome作成01.jpg

2) データベース・ホームの作成画面
01_大阪ExaVM02-DatabaseHome作成02.jpg

01_大阪ExaVM02-DatabaseHome作成02.jpg

3) 作成中

01_DBHome追加03.jpg

4) 作成完了
01_DBHome追加04.jpg

● CDB_Tokyo から CDB_Osaka を Data Guard有効化

1) Primary DB CDB_Tokyo DB画面
プライマリ ロールを引き受けるデータベース CDB_Tokyo DB システムに移動し、「データベースの詳細」ページの「リソース」で、「Data Guard アソシエーション」を選択し、[Add Standby] をクリック
02_東京-大阪ExaVM02--DG作成01.jpg

2) Add Standby 画面
「スタンバイの追加」ページで、Data Guard グループを構成します。
ここでは、新しいData Guard機能を備えた[新規Data Guard グループ・リソースの使用]を選択して作成します。

・ Data Guard experience選択
  - 新規Data Guard グループ・リソースの使用: このオプションを使用すると、新しい Data Guard 構成が Data Guard グループ リソースとして作成されます。新しい API を備えたこのオプションは、複数のスタンバイ データベースの追加をサポートし、その他の拡張機能を提供します。
  - 既存のData Guardアソシエーション・リソースの使用: 複数のスタンバイ データベースを追加することはできず、新しい API によって提供される拡張機能も利用できません。
・ ピア・リージョン: スタンバイ データベースを配置するリージョンを選択
・ Exadataインフラストラクチャの選択: 事前に作成したStandby用 Exadata Infrastructureを選択
・ クラスタの選択: 事前に作成したStandby用 Exadata VM Clusterを選択
・ Data Guard グループの詳細: Active Data Guard または Data Guard を選択
  - Active Data Guard: リアルタイム クエリと DML オフロード、自動ブロック修復、スタンバイ ブロック変更追跡、Far Sync、グローバル データ サービス、アプリケーション継続性などの追加機能があります。Active Data Guard には Oracle Active Data Guard ライセンスが必要であることに注意してください。
・ 保護モード: 最大パフォーマンスまたは最大可用性のいずれかになります。これらのオプションの詳細については、 「Oracle Data Guard 保護モード」(https://docs.oracle.com/en/database/oracle/oracle-database/21/sbydb/introduction-to-oracle-data-guard-concepts.html#GUID-65DA4E2E-3666-4972-895C-EA45D043B127)を参照してください。
・ トランスポート タイプ:この Data Guard グループに使用される REDO トランスポート タイプ。これらのオプションの詳細については、 「REDO トランスポート サービス」(https://docs.oracle.com/en/database/oracle/oracle-database/21/sbydb/oracle-data-guard-redo-transport-services.html#GUID-0EC71C7D-A80B-40AA-93E5-28BB7E24ED31)を参照してください。
・ データベース ホームの選択: 既存のデータベース ホームを選択し、事前に作成したDatabase Homeを選択
・ 一意のデータベース名: DB_UNIQUE_NAME。この値は、プライマリ クラウド VM クラスターとスタンバイ クラウド VM クラスター全体で一意である必要があります。指定しない場合は、システムによって次のように一意の名前の値が自動的に生成されます。
・ データベース・パスワード: プライマリ データベースのデータベース管理者パスワードを入力します。スタンバイ データベースにも同じデータベース管理者パスワードを使用します。
・ TDEウォレット・パスワード: TDE ウォレット パスワードを入力
・ Oracle SID プレフィックス: INSTANCE_NAMEデータベース パラメータが作成されます。このINSTANCE_NAMEパラメータは SID とも呼ばれます。指定しない場合、SID プレフィックスはデフォルトで db_unique_name の最初の 12 文字になります。

02_東京-大阪ExaVM02--DG作成02.jpg

3) Add Standby 中〜
02_東京-大阪ExaVM02--DG作成04.jpg

4) Add Standby 完了
04_CDB _Tokyo01_DG作成確認画面01.jpg

● 設定確認

DGMGRLで確認してみてみます。
Data Guardコマンドライン・インタフェース(DGMGRL)を使用すると、Data Guard Broker構成とその様々なメンバーを、コマンドラインから直接、あるいはバッチ・プログラムやスクリプトから管理できます。

1) DGMGRL接続

[oracle@exa-osaka01-server-vbn501 ~]$ dgmgrl system/<Password>
DGMGRL for Linux: Release 23.0.0.0.0 - for Oracle Cloud and Engineered Systems on Wed Feb 5 15:05:59 2025
Version 23.6.0.24.10

Copyright (c) 1982, 2024, Oracle and/or its affiliates.  All rights reserved.

Welcome to DGMGRL, type "help" for information.
Connected to "CDB_Osaka01"
Connected as SYSDG.

2) DGMGRL: ブローカ構成情報確認
ブローカ構成のサマリーおよびステータスを表示します。サマリーには、ブローカ構成に含まれるすべてのデータベースと、ファスト・スタート・フェイルオーバーのステータスなど、ブローカ構成自体に関するその他の情報が表示されます。

DGMGRL> show configuration verbose

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Tokyo01                - Primary database
    CDB_Osaka01                - Physical standby database
    dbrs_primary_cdb_tokyo01   - Recovery appliance

  Members Not Receiving Redo:
  dbrs_alternate_cdb_tokyo01 - Recovery appliance (alternate of dbrs_primary_cdb_tokyo01)

  Properties:
    BystandersFollowRoleChange      = 'ALL'
    CommunicationTimeout            = '180'
    ConfigurationSimpleName         = 'cdb_dgconf'
    ConfigurationWideServiceName    = 'CDB_CFG'
    DrainTimeout                    = '0'
    ExternalDestination1            = ''
    ExternalDestination2            = ''
    FastStartFailoverAutoReinstate  = 'TRUE'
    FastStartFailoverLagGraceTime   = '0'
    FastStartFailoverLagLimit       = '30'
    FastStartFailoverLagType        = 'APPLY'
    FastStartFailoverPmyShutdown    = 'TRUE'
    FastStartFailoverThreshold      = '30'
    ObserverOverride                = 'FALSE'
    ObserverPingInterval            = '0'
    ObserverPingRetry               = '0'
    ObserverReconnect               = '0'
    OperationTimeout                = '30'
    PrimaryDatabaseCandidates       = ''
    PrimaryLostWriteAction          = 'CONTINUE'
    TraceLevel                      = 'USER'

Fast-Start Failover:  Disabled

Configuration Status:
SUCCESS

3) DGMGRL: CDB_Tokyoデータベース情報確認
指定したデータベースとそのインスタンスに関する情報またはプロパティ値を表示します。

DGMGRL> show database verbose CDB_Tokyo01

Database - CDB_Tokyo01

  Role:                PRIMARY
  Intended State:      TRANSPORT-ON
  Redo Rate:           (unknown)

  Instance(s):
    CDB_Tokyo011
    CDB_Tokyo012

  Properties:
    AlternateLocation               = ''
    ApplyInstanceTimeout            = '0'
    ApplyInstances                  = '0'
    ApplyLagThreshold               = '30'
    ApplyParallel                   = 'AUTO'
    ArchiveLocation                 = ''
    Binding                         = 'OPTIONAL'
    DGConnectIdentifier             = 'CDB_Tokyo01'
    DelayMins                       = '0'
    FastStartFailoverTarget         = 'CDB_Osaka01'
    InconsistentLogXptProps         = '(monitor)'
    LogShipping                     = 'ON'
    LogXptMode                      = 'ASYNC'
    LogXptStatus                    = '(monitor)'
    MaxFailure                      = '0'
    NetTimeout                      = '30'
    ObserverConnectIdentifier       = ''
    PreferredApplyInstance          = ''
    PreferredObserverHosts          = ''
    RecvQEntries                    = '(monitor)'
    RedoCompression                 = 'DISABLE'
    RedoRoutes                      = '(CDB_Tokyo01:CDB_Osaka01,(DBRS_PRIMARY_CDB_Tokyo01 ASYNC PRIORITY=1,DBRS_ALTERNATE_CDB_Tokyo01 ASYNC PRIORITY=2))(CDB_Osaka01:(DBRS_PRIMARY_CDB_Tokyo01 ASYNC PRIORITY=1,DBRS_ALTERNATE_CDB_Tokyo01 ASYNC PRIORITY=2))'
    ReopenSecs                      = '300'
    SendQEntries                    = '(monitor)'
    SidName(*)
    StandbyAlternateLocation        = ''
    StandbyArchiveLocation          = ''
    StaticConnectIdentifier(*)
    TopWaitEvents(*)
    TransportDisconnectedThreshold  = '30'
    TransportLagThreshold           = '30'
    UserManagedParams               = ''
    (*) - Please check specific instance for the property value

  Log file locations(*):
    (*) - Check specific instance for log file locations.

Database Status:
SUCCESS

3) DGMGRL: CDB_Tokyoデータベース Switchover可能チェック確認
VALIDATE DATABASEコマンドを使用して、データベースがロール変更に即時対応可能かどうかを確認する、一連の徹底チェックを実行することができます。

DGMGRL>  validate database verbose CDB_Tokyo01

  Database Role:    Primary database

  Ready for Switchover:  Yes

  Flashback Database Status:
    Database     Status           Retention Target
    CDB_Tokyo01  On               1440
    CDB_Osaka01  On               1440

  Force Logging Status:
    Database     Status           Nonlogged Blocks
    CDB_Tokyo01  On               0

  Capacity Information:
    Database     Instances        Threads
    CDB_Tokyo01  2                2

  Managed by Clusterware:
    CDB_Tokyo01:  YES

  Temporary Tablespace File Information:
    CDB_Tokyo01 Temp Files:  3

  Data file Online Move in Progress:
    CDB_Tokyo01:  No

  Transport-Related Information:
    Transport On:  Yes

  Log Files Cleared:
    CDB_Tokyo01 Standby Redo Log Files:  Cleared

4) DGMGRL: CDB_Osakaデータベース情報確認

DGMGRL> show database verbose CDB_Osaka01

Database - CDB_Osaka01

  Role:                PHYSICAL STANDBY
  Intended State:      APPLY-ON
  Transport Lag:       0 seconds (computed 1 second ago)
  Apply Lag:           0 seconds (computed 1 second ago)
  Average Apply Rate:  23.00 KByte/s
  Active Apply Rate:   1.15 MByte/s
  Maximum Apply Rate:  1.19 MByte/s
  Real Time Query:     ON
  Instance(s):
    CDB_Osaka011 (apply instance)
    CDB_Osaka012

  Properties:
    AlternateLocation               = ''
    ApplyInstanceTimeout            = '0'
    ApplyInstances                  = '0'
    ApplyLagThreshold               = '30'
    ApplyParallel                   = 'AUTO'
    ArchiveLocation                 = ''
    Binding                         = 'OPTIONAL'
    DGConnectIdentifier             = 'CDB_Osaka01'
    DelayMins                       = '0'
    FastStartFailoverTarget         = 'CDB_Tokyo01'
    InconsistentLogXptProps         = '(monitor)'
    LogShipping                     = 'ON'
    LogXptMode                      = 'ASYNC'
    LogXptStatus                    = '(monitor)'
    MaxFailure                      = '0'
    NetTimeout                      = '30'
    ObserverConnectIdentifier       = ''
    PreferredApplyInstance          = ''
    PreferredObserverHosts          = ''
    RecvQEntries                    = '(monitor)'
    RedoCompression                 = 'DISABLE'
    RedoRoutes                      = '(CDB_Osaka01:CDB_Tokyo01)'
    ReopenSecs                      = '300'
    SendQEntries                    = '(monitor)'
    SidName(*)
    StandbyAlternateLocation        = ''
    StandbyArchiveLocation          = ''
    StaticConnectIdentifier(*)
    TopWaitEvents(*)
    TransportDisconnectedThreshold  = '30'
    TransportLagThreshold           = '30'
    UserManagedParams               = ''
    (*) - Please check specific instance for the property value

  Log file locations(*):
    (*) - Check specific instance for log file locations.

Database Status:
SUCCESS

5) DGMGRL: CDB_Osakaデータベース Switchover可能チェック確認

DGMGRL> validate database verbose CDB_Osaka01

  Database Role:     Physical standby database
  Primary Database:  CDB_Tokyo01

  Ready for Switchover:  Yes
  Ready for Failover:    Yes (Primary Running)

  Flashback Database Status:
    Database     Status           Retention Target
    CDB_Tokyo01  On               1440
    CDB_Osaka01  On               1440

  Force Logging Status:
    Database     Status           Nonlogged Blocks
    CDB_Tokyo01  On               0
    CDB_Osaka01  On               0

  Capacity Information:
    Database     Instances        Threads
    CDB_Tokyo01  2                2
    CDB_Osaka01  2                2

  Managed by Clusterware:
    CDB_Tokyo01:  YES
    CDB_Osaka01:  YES

  Temporary Tablespace File Information:
    CDB_Tokyo01 Temp Files:  3
    CDB_Osaka01 Temp Files:  3

  Data file Online Move in Progress:
    CDB_Tokyo01:  No
    CDB_Osaka01:  No

  Standby Apply-Related Information:
    Apply State:      Running
    Apply Lag:        0 seconds (computed 1 second ago)
    Apply Delay:      0 minutes

  Transport-Related Information:
    Transport On:  Yes
    Gap Status:    No Gap
    Transport Lag:  0 seconds (computed 1 second ago)
    Transport Status:  Success

  Log Files Cleared:
    CDB_Tokyo01 Standby Redo Log Files:  Cleared
    CDB_Osaka01 Online Redo Log Files:   Cleared
    CDB_Osaka01 Standby Redo Log Files:  Available

  Current Log File Groups Configuration:
    Thread #  Online Redo Log Groups  Standby Redo Log Groups
              (CDB_Tokyo01)           (CDB_Osaka01)
    1         4                       4
    2         4                       4

  Future Log File Groups Configuration:
    Thread #  Online Redo Log Groups  Standby Redo Log Groups
              (CDB_Osaka01)           (CDB_Tokyo01)
    1         4                       4
    2         4                       4

  Current Configuration Log File Sizes:
    Thread #   Smallest Online Redo      Smallest Standby Redo
               Log File Size             Log File Size
               (CDB_Tokyo01)             (CDB_Osaka01)
    1          4000 MBytes               4000 MBytes
    2          4000 MBytes               4000 MBytes

  Future Configuration Log File Sizes:
    Thread #   Smallest Online Redo      Smallest Standby Redo
               Log File Size             Log File Size
               (CDB_Osaka01)             (CDB_Tokyo01)
    1          4000 MBytes               4000 MBytes
    2          4000 MBytes               4000 MBytes

  Apply-Related Property Settings:
    Property                        CDB_Tokyo01 Value        CDB_Osaka01 Value
    DelayMins                       0                        0
    ApplyParallel                   AUTO                     AUTO
    ApplyInstances                  0                        0

  Transport-Related Property Settings:
    Property                        CDB_Tokyo01 Value        CDB_Osaka01 Value
    LogShipping                     ON                       ON
    LogXptMode                      ASYNC                    ASYNC
    Dependency                      <empty>                  <empty>
    Binding                         OPTIONAL                 OPTIONAL
    MaxFailure                      0                        0
    ReopenSecs                      300                      300
    NetTimeout                      30                       30
    RedoCompression                 DISABLE                  DISABLE

  Parameter Settings:
    Parameter                       CDB_Tokyo01 Value        CDB_Osaka01 Value
    DB_BLOCK_CHECKING               MEDIUM                   MEDIUM
    DB_BLOCK_CHECKSUM               TYPICAL                  TYPICAL
    DB_LOST_WRITE_PROTECT           TYPICAL                  TYPICAL

DGMGRL>

■ スタンバイ CDB_Aoyama, CDB_Umeda 追加

CDB_Osaka同様の手順で Primary Database CDB_Tokyoへ追加します。

● スタンバイ CDB_Aoyama, CDB_Umeda追加確認

各Databasae画面の Data Guard Group画面のリストに追加されれば追加完了です。
04_CDB_Aoyama追加確認01-2.jpg

● DGMGRL: CDB_Aoyama, CDB_Umeda追加確認

DGMGRL> show configuration verbose

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Tokyo01 - Primary database
    CDB_Osaka01 - Physical standby database
    CDB_Umeda   - Physical standby database
    CDB_Aoyama  - Physical standby database

  Properties:
    BystandersFollowRoleChange      = 'ALL'
    CommunicationTimeout            = '180'
    ConfigurationSimpleName         = 'cdb_dgconf'
    ConfigurationWideServiceName    = 'CDB_CFG'
    DrainTimeout                    = '0'
    ExternalDestination1            = ''
    ExternalDestination2            = ''
    FastStartFailoverAutoReinstate  = 'TRUE'
    FastStartFailoverLagGraceTime   = '0'
    FastStartFailoverLagLimit       = '30'
    FastStartFailoverLagType        = 'APPLY'
    FastStartFailoverPmyShutdown    = 'TRUE'
    FastStartFailoverThreshold      = '30'
    ObserverOverride                = 'FALSE'
    ObserverPingInterval            = '0'
    ObserverPingRetry               = '0'
    ObserverReconnect               = '0'
    OperationTimeout                = '30'
    PrimaryDatabaseCandidates       = ''
    PrimaryLostWriteAction          = 'CONTINUE'
    TraceLevel                      = 'USER'

Fast-Start Failover:  Disabled

Configuration Status:
SUCCESS

■ スタンバイ DatabaseへBackup を設定

自動 Exadata データベース バックアップは、Oracle Cloud Infrastructure によって管理されます。
Oracle 管理の自動バックアップ機能は、コンソールを使用して簡単にバックアップ設定を構成できるため、Oracle Cloud データベースをバックアップするための推奨される方法です。手動バックアップやバックアップ ストレージ管理タスクを実行する必要はありません。
Exadata データベースの自動バックアップの保存先として、Autonomous Recovery Service と Oracle Object Storage の 2 つが考えられます。
リカバリサービス(推奨)はOracle データベースに最新のサイバーセキュリティ保護を提供するオンプレミスの Oracle Zero Data Loss Recovery Applianceテクノロジーに基づく、完全に管理されたサービスです。独自の自動化機能により、Oracle データベースの変更がリアルタイムで保護され、実稼働データベースのオーバーヘッドなしでバックアップが検証され、任意の時点への高速で予測可能なリカバリが可能になります。
現在、バックアップが Object Storage で構成されている場合は、シームレスに Recovery Service に移行して、同じコストで高度な機能を実現できます。
Recovery Service の詳細については、「Oracle Database Autonomous Recovery Service について」を参照してください。
各Databaseへ 自動バックアップの Zero Data Loss Autonomous Recovery Service (ZRCV)を設定します。

● ZRCV事前設定

次を参考に事前準備しておきます。

● 自動バックアップ設定

1) Database画面
Database画面のリソースにある Backupを選択し、[自動バックアップ]をクリック
01_ZRCV設定01.jpg

2) 自動バックアップの構成画面
次の項目を入力し、[変更の保存]をクリック

・ 自動バックアップの有効化: チェックして有効化
・ バックアップの保存先: 自立型リカバリ・サービス(推奨)を選択
・ 保護ポリシー: 今回、事前に定義したカスタムポリシーを設定
・ リアルタイム・データ保護: チェックして有効化
・ データベース終了後の削除オプション
  - 保護ポリシー保持期間に従ってバックアップを保持します: 
  - バックアップを72時間保持し、その後削除します: 
・ 日次バックアップのスケジュール時間(UTC): 

01_ZRCV設定02.jpg

2) 自動バックアップの構成中〜
01_ZRCV設定03.jpg

3) 自動バックアップの構成完了〜
02_ZRCV設定確認02.jpg

● DGMGRL: ZRCV追加確認

ZRCV追加すると Recovery appliance情報が追加されます。

DGMGRL> show configuration verbose

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Tokyo01                - Primary database
    CDB_Osaka01                - Physical standby database
      dbrs_primary_cdb_osaka01   - Recovery appliance (receiving current redo)
    CDB_Umeda                  - Physical standby database
      dbrs_primary_cdb_umeda     - Recovery appliance (receiving current redo)
    CDB_Aoyama                 - Physical standby database
      dbrs_primary_cdb_aoyama    - Recovery appliance (receiving current redo)
    dbrs_primary_cdb_tokyo01   - Recovery appliance

  Members Not Receiving Redo:
  dbrs_alternate_cdb_tokyo01 - Recovery appliance (alternate of dbrs_primary_cdb_tokyo01)
  dbrs_alternate_cdb_aoyama  - Recovery appliance (alternate of dbrs_primary_cdb_aoyama)
  dbrs_alternate_cdb_umeda   - Recovery appliance (alternate of dbrs_primary_cdb_umeda)
  dbrs_alternate_cdb_osaka01 - Recovery appliance (alternate of dbrs_primary_cdb_osaka01)

  Properties:
    BystandersFollowRoleChange      = 'ALL'
    CommunicationTimeout            = '180'
    ConfigurationSimpleName         = 'cdb_dgconf'
    ConfigurationWideServiceName    = 'CDB_CFG'
    DrainTimeout                    = '0'
    ExternalDestination1            = ''
    ExternalDestination2            = ''
    FastStartFailoverAutoReinstate  = 'TRUE'
    FastStartFailoverLagGraceTime   = '0'
    FastStartFailoverLagLimit       = '30'
    FastStartFailoverLagType        = 'APPLY'
    FastStartFailoverPmyShutdown    = 'TRUE'
    FastStartFailoverThreshold      = '30'
    ObserverOverride                = 'FALSE'
    ObserverPingInterval            = '0'
    ObserverPingRetry               = '0'
    ObserverReconnect               = '0'
    OperationTimeout                = '30'
    PrimaryDatabaseCandidates       = ''
    PrimaryLostWriteAction          = 'CONTINUE'
    TraceLevel                      = 'USER'

Fast-Start Failover:  Disabled

Configuration Status:
SUCCESS

■ Switchover実行

スイッチオーバーにより、プライマリ データベースとスタンバイ データベースの役割が逆転します。
各データベースは、新しいロールでも引き続き Data Guard グループの一部です。スイッチオーバーにより、データ損失がなくなります。プライマリ データベースで計画メンテナンスを実行する前に、スイッチオーバーを使用できます。Data Guard グループを持つ Exadata データベース仮想マシンで計画メンテナンスを実行するには、通常、プライマリをスタンバイ ロールに切り替え、スタンバイでメンテナンスを実行してから、プライマリ ロールに切り替えます。

● Switchover前 DGMGRL確認

dgmgrl で Switchover前の状態を確認
1) dgmgrl接続

[oracle@exa-tokyo01-server-vbn501 ~]$ dgmgrl system/<Password>
DGMGRL for Linux: Release 23.0.0.0.0 - for Oracle Cloud and Engineered Systems on Wed Feb 5 15:05:59 2025
Version 23.6.0.24.10

Copyright (c) 1982, 2024, Oracle and/or its affiliates.  All rights reserved.

Welcome to DGMGRL, type "help" for information.
Connected to "CDB_Tokyo01"
Connected as SYSDG.

1) dgmgrl configuration確認
CDB_Tokyo が Primary Databaseであることを確認できます。

DGMGRL> show configuration

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Tokyo01                - Primary database
    CDB_Osaka01                - Physical standby database
      dbrs_primary_cdb_osaka01   - Recovery appliance (receiving current redo)
    CDB_Umeda                  - Physical standby database
      dbrs_primary_cdb_umeda     - Recovery appliance (receiving current redo)
    CDB_Aoyama                 - Physical standby database
      dbrs_primary_cdb_aoyama    - Recovery appliance (receiving current redo)
    dbrs_primary_cdb_tokyo01   - Recovery appliance

  Members Not Receiving Redo:
  dbrs_alternate_cdb_tokyo01 - Recovery appliance (alternate of dbrs_primary_cdb_tokyo01)
  dbrs_alternate_cdb_aoyama  - Recovery appliance (alternate of dbrs_primary_cdb_aoyama)
  dbrs_alternate_cdb_umeda   - Recovery appliance (alternate of dbrs_primary_cdb_umeda)
  dbrs_alternate_cdb_osaka01 - Recovery appliance (alternate of dbrs_primary_cdb_osaka01)

Fast-Start Failover:  Disabled

Configuration Status:
SUCCESS   (status updated 54 seconds ago)

● Switchover実行

1) Databseシステム Data Guard Group画面
Data Guard グループのメンバーであるスタンバイ データベースでスイッチオーバー操作を実行できます。
DB システムのData Guard Group画面で Data Guard グループ内のスタンバイ データベースを選択し、[アクション] アイコン (3 つのドット) をクリックし、[スイッチオーバー]をクリック
01_SwitchoverテストtoOsaka02.jpg

2) Switchover database ダイアログ ボックス画面
データベース管理者のパスワードを入力し、[Switchover]をクリック
01_SwitchoverテストtoOsaka03.jpg

3) Switchover 中〜
01_SwitchoverテストtoOsaka04.jpg

4) Switchover 完了
01_SwitchoverテストtoOsaka05.jpg

● Switchover後 DGMGRL確認

CDB_Tokyoから CDB_Osakaへ切り替わったことを確認できます。

DGMGRL> show configuration

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Osaka01                - Primary database
    CDB_Tokyo01                - Physical standby database
      dbrs_primary_cdb_tokyo01   - Recovery appliance (receiving current redo)
    CDB_Umeda                  - Physical standby database
      dbrs_primary_cdb_umeda     - Recovery appliance (receiving current redo)
    CDB_Aoyama                 - Physical standby database
      dbrs_primary_cdb_aoyama    - Recovery appliance (receiving current redo)
    dbrs_primary_cdb_osaka01   - Recovery appliance

  Members Not Receiving Redo:
  dbrs_alternate_cdb_tokyo01 - Recovery appliance (alternate of dbrs_primary_cdb_tokyo01)
  dbrs_alternate_cdb_aoyama  - Recovery appliance (alternate of dbrs_primary_cdb_aoyama)
  dbrs_alternate_cdb_umeda   - Recovery appliance (alternate of dbrs_primary_cdb_umeda)
  dbrs_alternate_cdb_osaka01 - Recovery appliance (alternate of dbrs_primary_cdb_osaka01)

Fast-Start Failover:  Disabled

Configuration Status:
SUCCESS   (status updated 46 seconds ago)

■ Faileover

フェイルオーバーは、既存のプライマリ データベースに障害が発生したり、アクセスできなくなったりした後に、スタンバイ データベースをプライマリ ロールに移行します。
フェイルオーバーによってデータが失われるかどうかは、保護モードと、プライマリ データベースの障害発生時にプライマリ データベースとターゲット スタンバイ データベースが同期されていたかどうかによって異なります。詳細については、Data Guard ドキュメントの 「手動フェイルオーバー」を参照してください。

● Faileover 前 DGMGRL確認

dgmgrl で Switchover前の状態を確認

DGMGRL> show configuration

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Tokyo01                - Primary database
    CDB_Osaka01                - Physical standby database
      dbrs_primary_cdb_osaka01   - Recovery appliance (receiving current redo)
    CDB_Umeda                  - Physical standby database
      dbrs_primary_cdb_umeda     - Recovery appliance (receiving current redo)
    CDB_Aoyama                 - Physical standby database
      dbrs_primary_cdb_aoyama    - Recovery appliance (receiving current redo)
    dbrs_primary_cdb_tokyo01   - Recovery appliance

  Members Not Receiving Redo:
  dbrs_alternate_cdb_tokyo01 - Recovery appliance (alternate of dbrs_primary_cdb_tokyo01)
  dbrs_alternate_cdb_aoyama  - Recovery appliance (alternate of dbrs_primary_cdb_aoyama)
  dbrs_alternate_cdb_umeda   - Recovery appliance (alternate of dbrs_primary_cdb_umeda)
  dbrs_alternate_cdb_osaka01 - Recovery appliance (alternate of dbrs_primary_cdb_osaka01)

Fast-Start Failover:  Disabled

Configuration Status:
SUCCESS   (status updated 54 seconds ago)

● CDB_Tokyo から CDB_Osaka へ Failover 実行

1) Databseシステム Data Guard Group画面
Data Guard グループのメンバーであるスタンバイ データベースでスイッチオーバー操作を実行できます。
DB システムのData Guard Group画面で Data Guard グループ内のスタンバイ データベースを選択し、[アクション] アイコン (3 つのドット) をクリックし、[スイッチオーバー]をクリック

01_FailovertoOsaka01.jpg

2) Failover database ダイアログ ボックス画面
データベース管理者のパスワードを入力し、[Failover]をクリック
01_FailovertoOsaka02.jpg

3) Failover 中〜
01_FailovertoOsaka03.jpg

4) Failover 完了
CDB_Tokyoから CDB_Osakaへ切り替わったことを確認できます。
CDB_Osakaデータベースはプライマリの役割を引き継ぎ、古いプライマリの CDB_Tokyo役割は「無効なスタンバイ」として表示されます。
01_FailovertoOsaka04.jpg

● Failover 後 DGMGRL確認

CDB_Tokyoから CDB_Osakaへ切り替わったことを確認できます。
古いプライマリの CDB_Tokyoは、ORA-16661: The standby database must be reinstated.状態になります。

DGMGRL> show configuration

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Osaka01                - Primary database
    CDB_Tokyo01                - Physical standby database (disabled)
      ORA-16661: The standby database must be reinstated.

    CDB_Umeda                  - Physical standby database
      dbrs_primary_cdb_umeda     - Recovery appliance (receiving current redo)
    CDB_Aoyama                 - Physical standby database
      dbrs_primary_cdb_aoyama    - Recovery appliance (receiving current redo)
    dbrs_primary_cdb_osaka01   - Recovery appliance

  Members Not Receiving Redo:
  dbrs_alternate_cdb_tokyo01 - Recovery appliance (alternate of dbrs_primary_cdb_tokyo01)
    Warning: ORA-16685: database does not receive redo data

  dbrs_primary_cdb_tokyo01   - Recovery appliance
    Warning: ORA-16685: database does not receive redo data

  dbrs_alternate_cdb_aoyama  - Recovery appliance (alternate of dbrs_primary_cdb_aoyama)
  dbrs_alternate_cdb_umeda   - Recovery appliance (alternate of dbrs_primary_cdb_umeda)
  dbrs_alternate_cdb_osaka01 - Recovery appliance (alternate of dbrs_primary_cdb_osaka01)

Fast-Start Failover:  Disabled

Configuration Status:
WARNING   (status updated 5 second ago)

● CDB_Osaka から、CDB_Umeda から、CDB_Aoyama へ Failover 実行

残りのずべて 1つのDatabaseを残して Failoverしてみてみます。
1) 1つを残して全て Failover 後画面
CDB_Aoyama以外のDatabaseの状態が、Disabled Standbyになっていることを確認できます。
03_FailovertoAoyama04.jpg

2) 1つを残して全て Failover 後 DGMGRL確認
CDB_AoyamaがPrimary database それ以外のステータスは以外のDatabaseの状態は、ORA-16661: The standby database must be reinstated. になっていることを確認できます。

DGMGRL> show configuration

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Aoyama                 - Primary database
    CDB_Tokyo01                - Physical standby database (disabled)
      ORA-16661: The standby database must be reinstated.

    CDB_Osaka01                - Physical standby database (disabled)
      ORA-16661: The standby database must be reinstated.

    CDB_Umeda                  - Physical standby database (disabled)
      ORA-16661: The standby database must be reinstated.

    dbrs_primary_cdb_aoyama    - Recovery appliance

  Members Not Receiving Redo:
  dbrs_alternate_cdb_tokyo01 - Recovery appliance (alternate of dbrs_primary_cdb_tokyo01)
    Warning: ORA-16685: database does not receive redo data

  dbrs_primary_cdb_tokyo01   - Recovery appliance
    Warning: ORA-16685: database does not receive redo data

  dbrs_alternate_cdb_aoyama  - Recovery appliance (alternate of dbrs_primary_cdb_aoyama)
  dbrs_alternate_cdb_umeda   - Recovery appliance (alternate of dbrs_primary_cdb_umeda)
    Warning: ORA-16685: database does not receive redo data

  dbrs_primary_cdb_umeda     - Recovery appliance
    Warning: ORA-16685: database does not receive redo data

  dbrs_alternate_cdb_osaka01 - Recovery appliance (alternate of dbrs_primary_cdb_osaka01)
    Warning: ORA-16685: database does not receive redo data

  dbrs_primary_cdb_osaka01   - Recovery appliance
    Warning: ORA-16685: database does not receive redo data


Fast-Start Failover:  Disabled

Configuration Status:
WARNING   (status updated 60 seconds ago)

■ Reinstate (復旧)

データベースを Data Guard グループのスタンバイ ロールに復元します。
障害の原因を修正した後、障害が発生したデータベースをサービス状態に戻すには、reinstate コマンドを使用します。

注記:1 つ以上のスタンバイ データベースを含む Data Guard グループの一部であるプライマリ データベースは終了できません。まずスタンバイ データベースを終了する必要があります。または、プライマリ データベースをスタンバイ ロールに切り替えてから、以前のプライマリを終了することもできます。
Data Guard 対応データベースを含む VM クラスタを終了することはできません。まず、Data Guard グループの一部であるスタンバイ データベースを終了する必要があります。

● CDB_Tokyo Reinstate 実行

1) Databseシステム Data Guard Group画面
01_ReinstatetoOsaka01.jpg

2) Reinstate database ダイアログ ボックス画面
01_ReinstatetoTokyo02.jpg

3) CDB_Tokyo Reinstate 中〜
01_ReinstatetoTokyo03.jpg

4) CDB_Tokyo Reinstate 完了
CDB_Tokyo が Standby 状態へ復旧したことを確認

01_ReinstatetoTokyo04-2.jpg

● Reinstate 後 DGMGRL確認

Reinstate した DB_Tokyo の ORA-16661: The standby database must be reinstated.の状態が回復し、DB_Tokyoの状態が Physical standby databaseへ正常になっていることを確認できます。

DGMGRL> show configuration

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Aoyama                 - Primary database
    CDB_Tokyo01                - Physical standby database
      dbrs_primary_cdb_tokyo01   - Recovery appliance (receiving current redo)
    dbrs_primary_cdb_aoyama    - Recovery appliance

    CDB_Osaka01                - Physical standby database (disabled)
      ORA-16661: The standby database must be reinstated.

    CDB_Umeda                  - Physical standby database
      ORA-16661: The standby database must be reinstated.

  Members Not Receiving Redo:
  dbrs_alternate_cdb_aoyama  - Recovery appliance (alternate of dbrs_primary_cdb_aoyama)
  dbrs_alternate_cdb_tokyo01 - Recovery appliance (alternate of dbrs_primary_cdb_tokyo01)
  dbrs_alternate_cdb_umeda   - Recovery appliance (alternate of dbrs_primary_cdb_umeda)
    Warning: ORA-16685: database does not receive redo data

  dbrs_primary_cdb_umed   - Recovery appliance
    Warning: ORA-16685: database does not receive redo data

  dbrs_alternate_cdb_osaka01 - Recovery appliance (alternate of dbrs_primary_cdb_osaka01)
    Warning: ORA-16685: database does not receive redo data

  dbrs_primary_cdb_osaka01   - Recovery appliance
    Warning: ORA-16685: database does not receive redo data


Fast-Start Failover:  Disabled

Configuration Status:
WARNING   (status updated 44 seconds ago)

● 全て復旧完了確認

残りのDatabaseをすべて Reinstateし、全て復旧完了したことを確認

DGMGRL> show configuration

Configuration - cdb_dgconf

  Protection Mode: MaxPerformance
  Members:
  CDB_Aoyama                 - Primary database
    CDB_Tokyo01                - Physical standby database
      dbrs_primary_cdb_tokyo01   - Recovery appliance (receiving current redo)
    CDB_Osaka01                - Physical standby database
      dbrs_primary_cdb_osaka01   - Recovery appliance (receiving current redo)
    CDB_Umeda                  - Physical standby database
      dbrs_primary_cdb_umeda     - Recovery appliance (receiving current redo)
    dbrs_primary_cdb_aoyama    - Recovery appliance

  Members Not Receiving Redo:
  dbrs_alternate_cdb_tokyo01 - Recovery appliance (alternate of dbrs_primary_cdb_tokyo01)
  dbrs_alternate_cdb_aoyama  - Recovery appliance (alternate of dbrs_primary_cdb_aoyama)
  dbrs_alternate_cdb_umeda   - Recovery appliance (alternate of dbrs_primary_cdb_umeda)
  dbrs_alternate_cdb_osaka01 - Recovery appliance (alternate of dbrs_primary_cdb_osaka01)

■ 参考

● 製品機能概要
 ・ Exadata Database Service
 ・ Active Data Guard
 ・ アプリケーション・コンティニュイティの詳細

● Engineered Systems Documentation
 ・ Exadata Database Service on Dedicated Infrastructure
 ・ Oracle Data GuardをExadata Cloud Infrastructureで使用する
 ・ Oracle Exadata Database Serviceでのデータベースのバックアップとリカバリの管理
 ・ Data Guard の操作

● Oracle Cloud Infrastructure Documentation
 ・ Oracle Exadata Database Service on Dedicated Infrastructure
 ・ Oracle Exadata Database Service on Dedicated Infrastructureの新機能

● Oracle Database Documentation
 ・ Oracle Database ドキュメントポータル
 ・ Oracle Data Guard の概念と管理
 ・ Oracle Data Guard Broker の概念
 ・ Data Guard Concepts and Administration
 ・ Oracle Data Guard Broker
 ・ Oracle Data Guardの保護モードの詳細
 ・ 自動ブロック・メディア・リカバリによるデータ保護の詳細
 ・ DBMS_ROLLINGの活用方法の詳細
 ・ Data GuardおよびActive Data Guard MAAのベストプラクティス
 ・ DMLをスタンバイ・データベースからプライマリ・データベースへ透過的にリダイレクトする方法

● Other Documentation
 ・ High Availability Overview and Best Practices
 ・ Active Data Guardとストレージのリモートミラー化の比較
 ・ グローバル・データ・サービス(GDS)の詳細
 ・ Oracle Globally Distributed Databaseの詳細

23
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
23
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?