Oracle Data GuardをOracle Exadata Database Service on Cloud@Customerとともに使用
VMクラスタでData Guardグループを構成および管理する方法について学習します。
- 「Oracle Exadata Database Service on Cloud@CustomerでのOracle Data Guardの使用について」
Oracle Data Guardは、1つ以上のスタンバイ・データベースを作成、メンテナンス、管理および監視する包括的なサービス・セットを提供し、本番Oracleデータベースが障害やデータ破損に耐えられるようにします。 - 「Oracle Data GuardをOracle Exadata Database Service on Cloud@Customerとともに使用するための前提条件」
Oracle Exadata Database Service on Cloud@CustomerでData Guardを使用するための前提条件のリストを確認します。 - 「Data Guardの操作」
Oracle Data Guardは、エンタープライズ・データの高可用性、データ保護および障害リカバリを保証します。 - 「コンソールを使用したOracle Data Guardグループの管理」
データベース間でData Guardグループを有効にする方法、スイッチオーバーまたはフェイルオーバー操作のいずれかを使用してData Guardグループ内のデータベースのロールを変更する方法、および障害が発生したデータベースを回復する方法について学習します。 - 「APIを使用したOracle Exadata Database Service on Cloud@CustomerシステムでのData Guard関連付けの管理」
APIを使用してOracle Exadata Database Service on Cloud@CustomerシステムでData Guard関連付けを管理する方法について学習します。 - 「APIを使用したOracle Exadata Database Service on Cloud@CustomerシステムでのData Guardグループの管理」
APIを使用してOracle Exadata Database Service on Cloud@CustomerシステムでData Guardグループを管理する方法について学習します。
親トピック: How-toガイド
Oracle Exadata Database Service on Cloud@CustomerでのOracle Data Guardの使用について
Oracle Data Guardは、1つ以上のスタンバイ・データベースの作成、メンテナンス、管理および監視など、一連の包括的なサービスを提供し、本番のOracleデータベースを障害およびデータ破損から保護します。
Oracle Data Guardでは、これらのスタンバイ・データベースを本番データベースのコピーとしてメンテナンスします。 したがって、本番データベースが計画的または計画外の停止によって使用不可能になった場合は、スタンバイ・データベースを本番ロールに切り替えて、停止時間を最小限にできます。 Oracle Data Guardを従来のバックアップ、リストアおよびクラスタ化の技法と連携して使用すると、高いレベルのデータ保護とデータ可用性を実現できます。 Oracle Data Guard転送サービスは、ソース・データベースから1つ以上のリモートの宛先への効率的で信頼性の高いREDO転送のため、Oracle StreamsやOracle GoldenGateなどの他のOracleの機能によっても使用されます。
Oracle Data Guardの詳細は、「Oracle Databaseドキュメント」ポータルの「Oracle Data Guard概念および管理」ドキュメントおよび「Oracle Data Guardブローカの概念」を参照してください。
このトピックでは、コンソールまたはAPIを使用してVMクラスタ内のData Guardリソースを管理する方法について説明します。
- スタンバイ・データベースはフィジカル・スタンバイです。
- ピア・データベース(プライマリおよびスタンバイ)のバージョンは同一です。
- スタンバイ・データベースは、オープンな読取り専用データベース(Active Data Guard)としてデプロイされます。
- 1つのプライマリ・データベースで、最大6つのスタンバイ・データベースをサポートできます。
Oracle Data GuardをOracle Exadata Database Service on Cloud@Customerとともに使用するための前提条件
Oracle Exadata Database Service on Cloud@CustomerでData Guardを使用するための前提条件のリストを確認します。
- 「VMクラスタ」
VMクラスタのData Guard実装には、2つのExadataデータベースVMクラスタ(プライマリ・データベースを含むクラスタとスタンバイ・データベースを含むクラスタ)が必要です。 - 「パスワード」
SYSパスワードを変更するか、TDEキーをローテーションするには、OCI APIを使用します。 - 「VMクラスタへのノードの追加」
VMクラスタにノードを追加すると、Data Guardデータベースのインスタンスが新しいノードに自動的に作成されます。 - 「VMクラスタからのノードの削除」
VMクラスタからノードを削除すると、削除ノード上のインスタンスとそのメタデータが自動的に削除されます。
VMクラスタ
VMクラスタのData Guard実装には、2つのExadataデータベースVMクラスタ(プライマリ・データベースを含むクラスタとスタンバイ・データベースを含むクラスタ)が必要です。
ノート:
Oracleでは、障害の分離と障害保護を改善するために、本番ワークロードのプライマリ・データベースとスタンバイ・データベースを異なるExadata Cloud Infrastructureに配置することを強くお薦めします。Data Guardの操作
Oracle Data Guardは、企業データの高可用性、データ保護および障害時リカバリを保証します。
プライマリ・データベースとスタンバイ・データベースは、Data Guardグループを構成します。 ほとんどのアプリケーションはプライマリ・データベースにアクセスします。 スタンバイ・データベースは、プライマリ・データベースのトランザクション上一貫性のあるコピーです。
Data Guardは、プライマリ・データベースからREDOデータを転送して適用することで、スタンバイ・データベースをメンテナンスします。 プライマリ・データベースが使用できなくなった場合は、Data Guardを使用して、スタンバイ・データベースをプライマリ・ロールにスイッチオーバーまたはフェイルオーバーできます。 これは、複数のスタンバイ・データベースがある場合でも当てはまります。
- 「スイッチオーバー」
スイッチオーバーは、プライマリ・データベース・ロールとスタンバイ・データベース・ロールを逆にします。 - 「フェイルオーバー」
フェイルオーバーは、既存のプライマリ・データベースに障害が発生するか、アクセスできなくなった後に、スタンバイ・データベースをプライマリ・ロールに遷移させます。 - 「回復」
データベースをData Guardグループのスタンバイ・ロールに回復します。
スイッチオーバー
スイッチオーバーは、データベースのプライマリ・ロールとスタンバイ・ロールを入れ替えます。
各データベースは、新しいロールで引き続きData Guardグループに含まれます。 スイッチオーバーにより、データ消失のない状態が保証されます。 プライマリ・データベースで計画メンテナンスを実行する前に、スイッチオーバーを使用できます。 Data Guardグループを含むExadataデータベース・コンピュート・ノードで計画メンテナンスを実行するには、通常、プライマリをスタンバイ・ロールに切り替え、スタンバイでメンテナンスを実行してから、プライマリ・ロールに戻します。
親トピック: Data Guardの操作
フェイルオーバー
フェイルオーバーは、既存のプライマリ・データベースで障害が発生したりアクセスが不可能になった後に、スタンバイ・データベースをプライマリ・ロールに移行します。
「最大パフォーマンス」保護モードを使用すると、フェイルオーバーによって一部のデータが失われることがあります。
親トピック: Data Guardの操作
再稼働
データベースをData Guardグループのスタンバイ・ロールに回復します。
障害の原因を修正した後に、回復コマンドを使用して、障害が発生したデータベースを再稼働させることができます。
ノート:
1つ以上のスタンバイ・データベースを含むData Guardグループの一部であるプライマリ・データベースは終了できません。 まず、スタンバイ・データベースを終了する必要があります。 または、プライマリ・データベースをスタンバイ・ロールにスイッチオーバーしてから、以前のプライマリを終了できます。
Data Guardが有効なデータベースを含むVMクラスタは終了できません。 最初に、Data Guardグループの一部であるスタンバイ・データベースを終了する必要があります。
親トピック: Data Guardの操作
コンソールを使用したOracle Data Guardグループの管理
データベース間でData Guardグループを有効にする方法、スイッチオーバーまたはフェイルオーバー操作のいずれかを使用してData Guardグループ内のデータベースのロールを変更する方法、および障害が発生したデータベースを回復する方法について学習します。
Data Guardを有効にすると、プライマリ・データベースとスタンバイ・データベースの間に別のData Guardグループが作成されます。
- 「コンソールを使用したOracle Exadata Database Service on Cloud@CustomerシステムでのData Guardの有効化」
データベース間でData Guardグループを設定する方法について学習します。 - 「コンソールを使用したExadata VMクラスタ内のデータベースのData Guardグループの表示」
Exadata VMクラスタ内のData Guardグループ内の各データベースのロールを表示するには、この手順に従います。 - 「コンソールを使用したData Guardグループの詳細の表示および編集」
デプロイしたOracle Databaseソフトウェア・ライセンス・タイプに基づいて、Data Guardタイプを切り替えることができます。 - 「コンソールを使用したデータベース・スイッチオーバーの実行」
Data Guardグループのメンバーであるスタンバイ・データベースでスイッチオーバー操作を開始できます。 - 「コンソールを使用したデータベース・フェイルオーバーの実行」
Data Guardグループのメンバーであるスタンバイ・データベースでフェイルオーバー操作を開始できます。 - 「コンソールを使用したデータベースの回復」
プライマリ・データベースをスタンバイにフェイルオーバーすると、スタンバイはプライマリ・ロールを引き継ぎ、古いプライマリは無効化されたスタンバイとして識別されます。 - 「コンソールを使用したOracle Exadata Database Service on Cloud@CustomerシステムでのData Guardグループの終了」
VMクラスタで、すべてのスタンバイ・データベースを終了してData Guardグループを削除します。
コンソールを使用したOracle Exadata Database Service on Cloud@CustomerシステムでのData Guardの有効化
データベース間でData Guardグループを設定する方法について学習します。
ノート:
Data Guardは、プライマリ・クラスタとスタンバイ・クラスタ間で十分なスループットを持つ信頼性の高いネットワークに依存します。 Oracleはネットワークを所有していないため、Data Guardを実装する前に評価を行い、必要なネットワーク帯域幅が使用可能であることを確認する必要があります。 クラスタ間の達成可能なスループットを理解し、データベースの要件が満たされているかどうかを評価するには、「ネットワーク・パフォーマンスの評価および最適化」に従うことをお薦めします。 デフォルトでは、リージョン間のExaDB-C@C Data Guard構成の最大ソケット・バッファ・サイズは、より高い値に設定されます。
ノート:
Data Guardグループを構成する場合、プライマリ・データベースとスタンバイ・データベースは同じメジャー・リリース・バージョンである必要がありますが、スタンバイ・データベースはより上位のマイナー・バージョンである必要があります。
最新リリースの一部として、パフォーマンスを向上させるための強化されたユーザー・エクスペリエンスと新しいAPIを導入し、クラウドの自動化による複数のスタンバイ・データベースのサポートを含む追加のData Guard機能を提供しています。
- 新しいAPIを使用すると、新しいData Guard構成がData Guardグループ・リソースとして作成されます。
- 既存のData Guard設定がある場合は、影響なく現在の機能を引き続き使用できます。 ただし、複数のスタンバイ・データベースを作成する場合は、いつでも実行できる新しいAPIモデルに移行する必要があります。
- 既存のData Guard関連付けAPIを使用してData Guard操作を管理する自動化が現在ある場合は、新しいAPIを使用してこれらの新機能を利用するようにアプリケーションを更新する必要があります
Oracleでは、現在、既存のData Guard関連付けAPIと、新しいData GuardグループAPIおよび関連するユーザー・インタフェースの両方をサポートしています。
ノート:
スタンバイでのパラレル操作が失敗した場合は、5分間隔で再試行する必要があります。Data Guard関連付けを構成するための作業リクエストが発行されます。 リクエストの進行状況およびプロビジョニングのステージは、それぞれのスタンバイ・データベースの「作業」「リクエスト」ページで確認できます。
関連付けが作成されると、データベースとそのピアの詳細には、それぞれのロールが「プライマリ」または「スタンバイ」として表示されます。
コンソールを使用したExadata VMクラスタ内のデータベースのData Guardグループの表示
Exadata VMクラスタ内のData Guardグループ内の各データベースのロールを表示するには、この手順に従います。
- ナビゲーション・メニューを開きます。 Oracle Databaseの下で、Exadata Database Service on Cloud@Customerをクリックします。
- コンパートメントを選択します。
- Data Guard関連付けでロールを表示するデータベースを含むVMクラスタをクリックします。
- 「リソース」の下の「データベース」セクションで、このVMクラスタ内の各データベースのロールが「Data Guardロール」列に示されます。
コンソールを使用したData Guardグループの詳細の表示および編集
デプロイしたOracle Databaseソフトウェア・ライセンス・タイプに基づいてData Guardタイプを切り替えることができます。
コンソールを使用したデータベース・スイッチオーバーの実行
Data Guardグループのメンバーであるスタンバイ・データベースでスイッチオーバー操作を開始できます。
これで、このデータベースはスタンバイのロールを引き継ぎ、スタンバイはData Guardグループのプライマリのロールを引き継ぐ必要があります。
コンソールを使用したデータベース・フェイルオーバーの実行
Data Guardグループのメンバーであるスタンバイ・データベースでフェイルオーバー操作を開始できます。
ノート:
プライマリ・データベースが正常なヘルスの場合でもフェイルオーバーを開始できますが、フェイルオーバーの実行時には注意が必要です。これで、このデータベースはプライマリのロールを引き受け、古いプライマリ・ロールは「無効なスタンバイ」として表示されます。
コンソールを使用したデータベースの回復
プライマリ・データベースをスタンバイにフェイルオーバーすると、スタンバイはプライマリ・ロールを引き継ぎ、古いプライマリは無効化されたスタンバイとして識別されます。
障害の原因を修正した後、障害が発生したデータベースを現在のプライマリの機能スタンバイとして回復できます。
バージョン12.2以上のデータベースを回復する前に、データベース・ホストでいくつかのステップを実行してデータベースを停止するか、MOUNT
モードで起動する必要があります。
ORACLE_UNQNAME
環境変数をDatabase Unique Nameの値に設定し、次のコマンドを実行します:srvctl stop database -d db-unique-name -o abort
srvctl start database -d db-unique-name -o mount
これで、このデータベースはData Guardグループのスタンバイとして回復されます。
APIを使用したOracle Exadata Database Service on Cloud@CustomerシステムでのData Guard関連付けの管理
APIを使用してOracle Exadata Database Service on Cloud@CustomerシステムでData Guard関連付けを管理する方法について学習します。
APIの使用およびリクエストの署名の詳細は、REST APIおよび「セキュリティ資格証明」を参照してください。 SDKの詳細は、「ソフトウェア開発キットとコマンドライン・インタフェース」を参照してください。
次の表に、Data Guard関連付けを管理するためのREST APIエンドポイントを示します。
操作 | REST APIエンドポイント |
---|---|
Data Guard関連付けを作成します。 |
|
指定したData Guard関連付け構成情報の詳細を表示します。 |
|
指定したデータベースのすべてのData Guard関連付けのリストを表示します。 |
|
スイッチオーバーを実行して、Data Guard関連付けのプライマリ・データベースをスタンバイ・ロールに移行します。 |
|
フェイルオーバーを実行して、既存のプライマリ・データベースに障害が発生するか、アクセスできなくなった後に、 |
|
|
詳細は、「コンソールを使用したデータベースの回復」を参照してください。 |
スタンバイ・データベースの削除。 |
APIの完全なリストは、「データベース・サービスAPI」を参照してください。
APIを使用したOracle Exadata Database Service on Cloud@CustomerシステムでのData Guardグループの管理
APIを使用してOracle Exadata Database Service on Cloud@CustomerシステムでData Guardグループを管理する方法について学習します。
APIの使用およびリクエストの署名の詳細は、REST APIおよび「セキュリティ資格証明」を参照してください。 SDKの詳細は、「ソフトウェア開発キットとコマンドライン・インタフェース」を参照してください。
次の表に、Data Guardグループを管理するためのREST APIエンドポイントを示します。
操作 | REST APIエンドポイント | コメント |
---|---|---|
スタンバイ・データベースの作成 / 追加 |
|
|
Data Guardアクション - フェイルオーバー |
フェイルオーバーは、プライマリになる各スタンバイでトリガーする必要があります。 |
|
Data Guardアクション - 回復 |
回復するには、それぞれのスタンバイで回復をトリガーする必要があります。 |
|
Data Guardアクション - スイッチオーバー |
スイッチオーバーは、プライマリになる各スタンバイでトリガーする必要があります。 |
|
スタンバイの削除 |
|
|
Data Guard関連付けの複数のスタンバイへの移行 |
|
|
Data Guardグループ構成の更新 |
構成を更新するには、スタンバイ・データベースまたはプライマリ・データベースのOCIDが必要です。 |
APIの完全なリストは、「データベース・サービスAPI」を参照してください。