株式会社コーソル
COLUMN

コーソルのお役立ちコラム

コーソルでは経験豊かなエンジニアが、Oracle Databaseに関するお役立ち情報を発信しています。
データベースのチューニングや設定にお役立ていただけます。

Oracle

公開日  更新日

Oracle Data Guardとは?OCI上での構成手順を解説!

企業の財務情報や顧客管理にはデータベースを利用するものですが、万が一、障害が発生してデータが破損してしまうと一大事です。
そうなる前の備えとして、Oracle Data Guardの導入を検討しているご担当者様もいらっしゃるでしょう。

そこで本記事では、Oracle Data Guardの概要と、導入に際する構成手順を紹介します。
「自社の重要な情報が詰まったデータベースを安全に活用していきたい」とお考えのご担当者様は、ぜひご一読ください。

Oracle Data Guardとは

そもそもOracle Data Guardとは、Oracle Database Enterprise Editionに含まれる、企業データの保護および障害発生時のリカバリーを保障する機能のことです。

Oracle Data Guardでは、データの変更履歴(REDO)を利用して、メインとして使用するデータベースの複製を作成します。
さらに複製したデータベースは、元のデータベースと入れ替えて使用することもできます。
そのため、データベース障害やリージョン障害などが発生した際にも、データベースの迅速な復旧が叶うというわけです。
また、メンテナンスによる計画停止においても、データベースの停止時間を最小限に抑えられます。
これらの機能によって、データの可用性が担保されるのです。
データベースを管理する担当者にとっては、このような機能こそ求めていたものではないでしょうか。

ただ単にデータベースの複製を作成するのではなく、すぐに切り替えて運用できるバックアップを残しておくことは非常に大切です。
万が一システム障害が発生しても、自社のデータベースを守りつつ持続的に運用したいのであれば、Oracle Data Guardがうってつけといえます。

Oracle Data Guardで扱うデータベースの種類

データベースの複製を作成して、さまざまな障害に備えられるOracle Data Guardですが、利用時に扱うデータベースは一つではありません。
実際に導入する前に、各データベースの種類を押さえておきましょう。

ここでは、メインのデータベースである“プライマリ・データベース”と、それを複製した“スタンバイ・データベース”の2つに大別して紹介します。
なお、スタンバイ・データベースは、さらに“フィジカル・スタンバイ・データベース”と、“ロジカル・スタンバイ・データベース”の2つのタイプに分かれています。
以下で詳しくお伝えしますので、ご参照ください。

プライマリ・データベース

Oracle Data Guardの構成には、本番環境で使用するデータベースである“プライマリ・データベース”が一つ含まれています。
本番データベースともよばれており、メインで扱うデータベースのことを指します。
自社で扱うほとんどのアプリケーションがアクセスするデータベースであることから、これに格納されているデータは絶対に失うわけにはいきません。

そのため、切り替え可能なプライマリ・データベースのコピーを用意しておくことで、システム障害や破損からデータを保護するというわけです。

スタンバイ・データベース

一方の“スタンバイ・データベース”とは、端的に言えばプライマリ・データベースのコピーです。

プライマリ・データベースでデータの更新が発生すると、変更履歴であるREDOデータがスタンバイ・データベースへ転送され、変更内容が自動的に適用されることでプライマリ・データベースと同一のデータ状態を実現します。
このようなデータベースの複製があれば、なんらかの理由でプライマリ・データベースが破壊されたとしてもすぐに復旧できるので安心です。

なお先述した通り、スタンバイ・データベースには、さらに2つのタイプがあります。
それぞれの特徴を理解すれば、自社のニーズに合わせて使い分けられます。
次項で詳しくお伝えしますので、引き続きご覧ください。

フィジカル・スタンバイ・データベース

フィジカル・スタンバイ・データベースにおいては、プライマリ・データベースから転送されたREDOを直接適用して同期します。
表や索引のデータだけではなく、データファイルも一致しているので、極めて正確な複製データベースといえます。

このことから、フィジカル・スタンバイ・データベースであれば、プライマリ・データベースに切り替えた時点ですぐに運用を開始できるというわけです。
システムの計画停止の際にはもちろん、予期せぬ障害が発生したとしても、データベースの可用性を損ないません。

また、Active Data Guardというオプションを利用することで、スタンバイ・データベースを参照専用で利用することも可能です。

ロジカル・スタンバイ・データベース

ロジカル・スタンバイ・データベースでは、REDOデータをデータベースの操作に用いられるデータベース言語である“SQL”に変換します。
そのSQLをスタンバイ・データベースに適用して、同一データをもつデータベースを複製するわけです。

SQLを使用することから、ロジカル・スタンバイ・データベースの場合はデータベースの操作が可能です。
たとえば、データの格納先を追加したり、viewやINDEXなどのオブジェクトを作成したりといったことが挙げられます。
自社の大切なデータベースを保護しながら、そのほかの用途にも使用できる点はロジカル・スタンバイ・データベースの利点といえます。

なお、ロジカル・スタンバイ・データベースはプライマリ・データベースの完全なコピーではないため、物理的なバックアップとしては利用できない点に注意してください。

OCI上でのOracle Data Guardの構成を作成する際の事前準備

Oracle Data Guardの概要は、理解できましたか?
ここからは、“OCI”(Oracle Cloud Infrastructure)とよばれる、Oracle社が提供するクラウドサービス上での構成作成に関する、事前準備についてお伝えします。

前提として、“Enterprise Edition以上”が必要ですのであらかじめご確認ください。
また、OCI上で構成する際には3つのパターンがあるため、先んじて解説していきます。

【OCI上でのOracle Data Guardの構成パターン】

構成パターン 概要
同一リージョン内 メンテナンスやシステム障害に考慮して、スタンバイ・データベースを構築する
別リージョン間 メンテナンスやリージョン障害を考慮して、プライマリ・データベースとは別のリージョンにスタンバイ・データベースを構築する
ハイブリッド オンプレミスとクラウド間で構築する

 

上記の表にある“リージョン”とは、クラウドサービスを提供している企業のデータセンターが設置されているエリアのことを指します。
つまりOracle Data Guardの構築を、エリア内で行うのか、エリアをまたいで行うのかといった点が異なるわけです。
ハイブリッドの場合は、オンプレミスとクラウド間の双方でスタンバイ・データベースを構築します。

OCI上でのOracle Data Guardの構成手順

さて、前提条件の説明が長くなりましたが、ここからは、いよいよOracle Data Guardの構成手順の紹介に移ります。
なお、今回お伝えするのは、“同一リージョン内でのData Guard”の構築手順です。

1.コンソールメニューから、Oracle Database→Oracle Base Database (VM, BM)→DBシステム→DBシステムの詳細→データベース詳細画面の順に遷移します。

2.次にData Guardアソシエーションを選択し、“Data Guardの有効化”ボタンをクリックします。

3.「DBシステム情報」の画面に以下の内容を入力して、「次」ボタンをクリックします。

「DBシステム情報」画面での入力項目

  • 表示名
  • リージョン
  • 可用性ドメイン
  • シェイプの構成
  • DBシステムの構成
  • ネットワーク情報の指定
  • Data Guardアソシエーション詳細
  • 診断収集

4.「データベース情報」画面でスタンバイ・データベースのパスワードを入力し、「Data Guardの有効化」ボタンをクリックします。スタンバイ・データベースのパスワードはプライマリ・データベースのパスワードと同じものを指定します。

5.プライマリ・データベース側の“Data Guardアソシエーション”画面で、スタンバイ・データベースの構築完了を確認できたら作業終了です。

Oracle Data Guardの切り替えの方法

続いては、Oracle Data Guardにおけるデータベースの切り替え方法について解説します。

スイッチオーバー

データベースの計画停止時に用いられることが多いのが、“スイッチオーバー”です。
これは、スタンバイ・データベースにすべてのREDOを適用した状態で、プライマリ・データベースと切り替える方法です。
一般的に、システムのメンテナンス時に実行されます。

スイッチオーバーではプライマリ・データベースでCOMMITされたすべての変更がスタンバイ・データベースに適用される為、データの消失リスクがなく、安全にデータベースを切り替えられます。
切り替え後は、それまでプライマリ・データベースとして扱っていたものが、新たなスタンバイ・データベースとなり、Oracle Data Guardの構成をそのまま維持できるのです。

フェイルオーバー

フェイルオーバーは、プライマリ・データベースが利用できない状態に陥った場合に、スタンバイ・データベースとの切り替えに用いられる方法です。
この方法を用いる際には、プライマリ・データベースは破損している状態なので、スイッチオーバーとは異なり、スタンバイ・データベースがない構成となります。

フェイルオーバー後も、持続的にOracle Data Guardを利用するためには、再度スタンバイ・データベースを作成して構成をやり直す必要があります。

Oracle Data Guardを活用することで自社のデータベースを保護できる

今回は、Oracle Data Guardの概要と、導入する際の構成手順を解説しました。

Oracle Data Guardでスタンバイ・データベースを作成することで、システム障害やメンテナンス時の計画停止の際にも、データベースの可用性を担保できます。
その際に作成するスタンバイ・データベースにはいくつか種類があるため、自社のニーズに即したものを選択して計画的に運用しましょう。

また、本記事で紹介した構成手順を参考にOracle Data Guardを導入すれば、安心・安全なデータベース管理が叶うはずです。

初めてOracle Data Guardを導入する企業のご担当者様は、データベースのプロ集団であるコーソルにご相談ください。
Oracle製品の導入をサポートして、企業のシステム基盤を支えさせていただきます。

この記事の監修者

監修者の写真

舛井 智行 (ますい ともゆき)

営業本部 企画&マーケティング部 次長

《資格》

Oracle Master Gold、Oracle RAC Expert、Linux Expert、LPIC Level1、Dbvisit Standby Certified Associate、基本情報技術者

《略歴》

2004年コーソル入社。2019年まで一貫してOracle Databaseの設計・構築・運用のサービス提供に従事。リモートDBAやリモート監視のサービス化、働き方改革プロジェクトで人事制度改革を手掛ける。2019年からライセンス販売強化のため企画&マーケティング部に異動。DbvisitやToad、DPAの取扱開始、販売促進活動を推し進め、ライセンス販売事業の売上拡大に注力中。

《主な著書》

オラクルマスター教科書 Gold DBA Oracle Database AdministrationⅡ
オラクルマスター教科書 Silver DBA Oracle Database Administration I
オラクルマスター教科書 Silver SQL Oracle Database SQL
Oracleの基本 ~データベース入門から設計/運用の初歩まで
プロとしてのOracle入門
Oracle Database 10g Oracle Enterprise Manager 逆引きクイックリファレンス

《担当者様からの一言》

コーソルはOracle Databaseの技術力において日本有数の知見を有すると自負しています。Oracle Masterの最高峰資格である『Oracle Master Platinum』の取得者数も日本No.1です。Oracle Databaseのことはもちろん、それ以外のDBについてもリモートDBAサービスを始めとした様々なサービス、製品を駆使してお客様のお困りごとを解消いたします。お困りごとがあればコーソルまでご相談ください。

監修者の写真

峯岸 隆一 (みねぎし りゅういち)

インフラソリューション部 市ヶ谷クラウドサービスチーム シニアエキスパート

《資格》

Oracle Master Gold、ORACLE MASTER Platinum、Oracle RAC Expert、
Oracle Database Cloud Service Oracle Infrastructure as a Service Cloud 2017 Implementation Essentials、
Oracle Cloud Infrastructure 2018 Architect Associate、
Oracle Cloud Infrastructure 2019 Architect Professional、
AWS Certified Solutions Architect – Associate、OSS-DB Silver、
MySQL 5.6 Database Administrator、基本情報技術者、テクニカルエンジニア(データベース)

《略歴》

2006年コーソル入社。2021年までOracle Databaseを中心にMySQLやGoldenGateなど、多岐にわたる製品のサポート業務に従事。2021年から企画&マーケティング部に異動し、Nutanix NDBサービス化、Qlik Replicateサービス化、AWS、OCIなど様々な製品のサービス化、クラウド環境上の製品検証、ブログ執筆を手掛ける。2023年からOCI技術に磨きをかけるべくOCI基盤の設計・構築業務を遂行中 。

《主な著書》

オラクルマスター教科書 Gold DBA Oracle Database AdministrationⅡ
オラクルマスター教科書 Silver DBA Oracle Database Administration I
オラクルマスター教科書 Silver SQL Oracle Database SQL  Oracleの基本 ~データベース入門から設計/運用の初歩まで

《担当者様からの一言》

コーソルはOracle Database製品および周辺製品において特化した技術力を有している会社です。また、育成にも力を入れており、新卒などOracle Databaseの知識がないエンジニアでも数年でOracle Master Platinumを取得するほどのエンジニアに育て上げることに成功しています。クラウド分野(AWS、Oracle Cloud)にも積極的に進出しておりますので、Oracle Databaseに関するサービスをご要望であればプラットフォーム問わず対応できるコーソルにご連絡下さい。

TOP