Oracle11g DataGuard新機能 その1

投稿日: 2008年3月26日

<Oracle 11g検証 第4弾 新機能:Oracle11g DataGuard新機能 その1>
ペンネーム: オレンジみかん

前回に引き続き、Oracle11g 新機能を検証します。
今回は「Oracle11g DataGuard新機能」について検証します。

DataGuardは以前にも検証していました。詳しくはこちらを参照して下さい。
https://old.insight-tec.com/mailmagazine/ora3/vol205.html

■Oracle11gでのDataGuard 新機能
(1)ハードウェアおよびオペレーティング・システム要件の縛りが無い
⇒低コストで構築できる

商用UNIX(Solaris,AIX,HP-UX)⇔LINUX でのDataGauard構築が可能
になった。つまり、本番環境に合わせて商用UNIXでスタンバイDBを構築する
必要がなくなった。従って、初期導入費用・保守費用が削減できる。

(2)スナップショットスタンバイ
⇒スタンバイDBをステージング環境として利用できる。

スナップショットスタンバイを利用することにより、スタンバイDBは、読み書
き可能モードでオープンできます。その間、プライマリDBから更新情報適用は
保留され、スタンバイDBは自由に更新することができます。従って、スタンバ
イDBを一次的にステージング環境として利用することができます。
スナップショットスタンバイのモードの解除後は保留中の更新情報が
適用され、元のスタンバイDBとして機能します。

[流れ]
1.フィジカルスタンバイ(通常時)
1)プライマリDB⇒(アーカイブファイルを転送)⇒スタンバイDB
2)アーカイブログをREDOを経由してデータを更新

2.スナップショットスタンバイのモードへ移行(テスト時)
1)プライマリDB⇒(アーカイブファイルを転送)⇒スタンバイDB
2)データ更新を保留(未適用のアーカイブファイルが蓄積)

3.テスト中(スタンバイDBへの読み書き)

4.テスト完了後、フィジカルスタンバイに復旧
1)保障付きリストア・ポイントまでデータベースをフラッシュバック
2)フィジカルスタンバイとしてマウント
3)プライマリDB⇒(アーカイブファイルを転送)⇒スタンバイDB
4)通常時の動作に復旧

■おさらい Oracle DataGuard って何?
DataGaurdはOracle社が提供する災害時のデータ保護を目的としたディザスタ
リカバリのソリューションです。

■ディザスタリカバリとは
地震や火災など拠点が失われるような大規模な災害時に対して、IT業務の
中断を極小化する方策です。

ディザスタリカバリのソリューションでは遠隔地にあるデータセンター
同士を常に同期させ、データセンターが倒壊するような災害でも、
他データセンターを利用して業務を直ちに再開できるといったことが
出来ます。

▼実用例
下記のように本番データセンターから離れた待機データセンターにデータ転
送し、万一本番系で障害が発生した場合、待機系が新たな本番機として業務
を継続します。

通常時)東京データセンター                      大阪データセンター
        プライマリDB  =(アーカイブログ転送)=> スタンバイDB
         (本番系)                                 (待機系)
                           ↓↓↓↓↓
        (障害時にスタンバイDBが新たなプライマリDBとなる)
                           ↓↓↓↓↓
障害時)東京データセンター                      大阪データセンター
        ×プライマリDB(障害)                  新プライマリDB
         (旧本番系=障害停止)                     (新本番系)

■ディザスタリカバリ以外の活用が可能
Oracle10g R2までのDataGuardでは、スタンバイDBは待機/参照のみ可能
でした。Oracle11gからはスナップショットスタンバイ機能を利用すること
により、スタンバイDBをステージング機として有効活用するという
ユニークな使い方が出来るようになりました。

[注目機能]
(1)ハードウェアおよびオペレーティング・システム要件の縛りが無い
⇒低コストで構築できる。

(2)スナップショットスタンバイ
⇒スタンバイDBをステージング環境として利用できる。

■実際にOracle11g DataGuardでデータ保護しよう!
今回の検証環境は以下の通りです。

□[検証環境]
[本番データベース]
OS:商用UNIX Solaris 5.10
Oracle:Oracle11g 11.1.0.6.0

[待機データベース]
OS:RedHat Linux EL5
Oracle:Oracle11g 11.1.0.6.0

□[利用イメージ]

 [本番データベース]                          [待機データベース]
 (場所:茅ヶ崎)                              (場所:恵比寿)
 プライマリDB          スタンバイDB
 本番環境 DBサービス                         検証環境 DBサーバ/
                                             System Test 用DBサーバ
 OS:商用UNIX Solaris 5.10                   OS:RedHat Linux EL5

■検証してみよう ~検証シナリオ~
それでは検証の流れを紹介します。
(1)Oracle11g DataGuardを構築しよう
・マルチプラットフォームでプライマリDBとスタンバイDBの整合性が
取れているか
・マルチプラットフォームでの構築注意点
(2)ハード障害が発生
・自動フェイルオーバー
・スイッチオーバー/スイッチバック
・スタンバイDBの修復してみよう
・自動フェイルオーバー監視の管理(機能拡大)
(3)スタンバイDBでステージング環境として活用しよう
・スナップショット・スタンバイの検証
・ステージング環境で書き込みしても、プライマリDBとスタンバイDBは
ステージング環境でのテスト実施後も整合性が取れているのか?

今回はここまで、次回は検証に入ります。
~花粉症がつらいけど花見には行きたい 恵比寿にて~