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

このチュートリアルでは、フィジカル・スタンバイ・データベースの作成方法について説明します。 次に記述する手順によって、デフォルトのデータ保護モードである最大パフォーマンス・モードのスタンバイ・データベースを構成します。 このチュートリアルでは、以下の内容を説明します。

  • 新しいRMANコマンドDUPLICATE FROM ACTIVE DATABASEの使用方法
  • 最大パフォーマンス・スタンバイ・モードを有効にする方法
  • フィジカル・スタンバイへのデータ送信を確認する方法
  • SQL*Plusを使用したプライマリ・データベースとフィジカル・スタンバイ・データベースの監視ビューを確認する方法

注:このOracle By Example(OBE)のOracle Data Guard構成では、orclがプライマリ・データベース、orclsby1がフィジカル・スタンバイ・データベースのSIDを示しています。 便宜上、このOBEでは、プライマリ・データベースとスタンバイ・データベースを1台のサーバー上で実行しています。

約1時間

トピック

このチュートリアルでは、以下のトピックについて説明します。

このアイコンの上にカーソルを置くと、すべてのスクリーンショットがロードし、表示されます。 (警告:すべてのスクリーンショットが同時にロードされるため、ご使用のインターネット接続によってはレスポンス・タイムが遅くなる場合があります。)

注:各手順に関連したスクリーンショットのみを表示する場合は、それぞれの手順にあるアイコンの上にカーソルを置いてください。 スクリーンショットをクリックすると、非表示になります。

概要

Oracle Database 11g Recovery Manager (RMAN)では、DUPLICATE FOR STANDBYコマンドにFROM ACTIVE DATABASE機能が導入されています。 これにより、プライマリ・データベースとスタンバイ・データベースの中間ストレージの必要性が軽減され、単一ストリームのネットワークの制限が緩和されます。

プライマリ・データベースのバックアップ作成と同時に、パラレル・ストリームでネットワーク上にスタンバイ・データベースを作成およびリストアできます。 簡単なOracle Net設定や、ディレクトリと暫定パスワード・ファイルの作成に加え、スタンバイ全体の作成が1つのRMANスクリプトで行えます。

Oracle Recovery Manager(Oracle RMAN)は、サーバー・パラメータ・ファイルのスタンバイ・ホストへのコピー、サーバー・パラメータ・ファイルを使用した補助インスタンスの起動、バックアップ制御ファイルのリストア、ネットワーク上で必要なすべてのデータベースファイルとアーカイブREDOログのスタンバイ・ホストへのコピーを自動的に行います。

前提条件

このチュートリアルを始める前に次の手順を完了してください。

1.

Oracle Database 11gのインストール(ソフトウェアとデータベースのインストール)を単一サーバー環境で実行するか、またはOracle Database 11gのインストール(ソフトウェアとデータベースのインストール)を第1サーバー、Oracle Database 11gソフトウェアのみを第2サーバーというデュアル・サーバー環境で実行します。

2.

physstby.zipファイルを作業ディレクトリ(wkdirなど)にダウンロードして解凍します。

トピック・リストに戻る

スタンバイ・データベース作成前のプライマリ・データベースの準備

ここでは、フィジカル・スタンバイ・データベースをサポートするよう、プライマリ・データベースが正しく構成されていることを確認します。

この事前タスクの実行は1回だけ必要です。 この手順を完了すると、データベースが1つまたは複数のスタンバイ・データベースのプライマリ・データベースとして機能する準備が整います。 以下の手順を実行します。

1.

FORCE LOGGINGが有効であることを確認します。 有効でない場合は、FORCE LOGGINGモードを有効にします。 この文は、ログに記録されない直接書込みI/Oの完了まで待機するため、完了までに時間がかかる場合があります。 次のコマンドを使用します。

Select FORCE_LOGGING from V$DATABASE;

ALTER DATABASE FORCE LOGGING;

 

2.

REDO転送の認証を構成します。

Oracle Data Guardは、Oracle Netセッションを使用してOracle Data Guard構成のメンバー間でREDOデータを転送し、メッセージを制御します。 このREDO転送セッションの認証は、Secure Sockets Layer(SSL)プロトコルまたはリモート・ログイン・パスワード・ファイルのいずれかを使用します。

このOBEでは、後続の手順で作成するリモート・ログイン・パスワード・ファイルを使用します。

 

3.

スタンバイ・ログ・ファイルをプライマリに追加して、プライマリ・データベースがREDOデータを受信するよう設定します。 ディレクトリ・パスが環境を反映していることを確認した後は、cr_sby_redologs.sqlスクリプトを使用できます。

オンラインREDOログ・グループの他に、もう1つのスタンバイREDOログ・グループをプライマリ・データベースとして追加しておくことを強く推奨します。 ファイルのサイズは、プライマリ・データベースのオンラインREDOログのサイズ以上である必要があります。

SQL> alter database add standby logfile
   2  '/u01/app/oracle/oradata/orcl/srl01.log' size 52428800

/Database altered.

SQL> alter database add standby logfile
   2 '/u01/app/oracle/oradata/orcl/srl02.log' size 52428800
   3 

/Database altered.

SQL> alter database add standby logfile
   2 '/u01/app/oracle/oradata/orcl/srl03.log' size 52428800
   3 

/Database altered.

SQL> alter database add standby logfile
   2 '/u01/app/oracle/oradata/orcl/srl04.log' size 52428800
   3 

/Database altered.

4.

プライマリ・データベースの初期化パラメータを設定します。

プライマリ・データベースで、データベースのプライマリ・ロールでの稼働中にREDO転送サービスを制御する初期化パラメータを定義します。 次のようなSQLコマンドを使用して、これらの設定を確認します。

次のパラメータがOracle Data Guard構成を反映した設定になっていることを確認します。

DB_NAME データベース名を指定します。 orclである必要があります。
DB_UNIQUE_NAME 各データベースに一意の名前を指定します。 DGロールが変更されても変更されません。 orclである必要があります。
CONTROL_FILES プライマリ・データベースの制御ファイルにローカル・パス名を指定します。
LOG_ARCHIVE_CONFIG DG_CONFIG属性を使用して、プライマリ・データベースとスタンバイ・データベースのDB_UNIQUE_NAMEのリストを表示します。
LOG_ARCHIVE_DEST_1 デフォルトでは、ローカルのアーカイブREDOログ・ファイルのアーカイブ出力先に設定されています。
LOG_ARCHIVE_DEST_2 プライマリ・ロールに対してのみ有効です。この出力先は、REDOデータをリモート・フィジカル・スタンバイの場所orclsby1に送信します。
REMOTE_LOGIN_PASSWORDFILE リモート・ログイン・パスワード・ファイルが使用されている場合は、EXCLUSIVEまたはSHAREDである必要があります(デフォルトはEXCLUSIVE)。
LOG_ARCHIVE_DEST_STATE_n ENABLEである必要があります(デフォルト)。

次のコマンドを使用して、プライマリ・データベースとスタンバイ・データベースを示すLOG_ARCHIVE_CONFIGLOG_ARCHIVE_DEST_2を設定します。


5.

次の文を発行してデータベースのアーカイブ状態を特定し、プライマリ・データベースをARCHIVELOGモードに設定して自動アーカイブを有効にします。

トピック・リストに戻る

ここでは、ネットワーク環境を構成してフィジカル・スタンバイ・データベースを作成します。

注:このOBEでは、単一サーバー環境のネットワークを構成します。 2台の異なるサーバーに環境を構成する場合は、両方のサーバーに相応のOracle Net Managerの構成が必要となる場合があります。

A. Oracle Net Managerを使用したフィジカル・スタンバイ・データベースのOracle Netサービス名の作成
B. Oracle Net Managerを使用したlistener.oraファイル内のスタンバイ・データベースのエントリの構成
C. ネットワーク上のスタンバイ・データベースの作成

トピック・リストに戻る

A. Oracle Net Managerを使用したフィジカル・スタンバイ・データベースのOracle Netサービス名の作成

1.

Oracle Net Managerを起動します。

2.

Local」を開きます。 「Service Naming」を選択し、緑色の「+」をクリックします。

 

3.

Net Service Nameフィールドに<physical standby SID>(orclsby1など)を入力し、「Next」をクリックします。

 

4.

TCP/IP (Internet Protocol)」を選択し、「Next」をクリックします。

 

5.

完全に認証された<hostname>(edtdr9p1.us.oracle.comなど)を入力し、「Next」をクリックします。

 

6.

Service Nameフィールドに<physical standby hostname>(orclsby1.us.oracle.comなど)を入力し、「Next」をクリックします。

 

7.

Finish」をクリックします。

 

 

8.

File」→「Save Network Configuration」をクリックして、tnsnames.oraファイルに情報を保存します。

 

 

トピックに戻る

B. Oracle Net Managerを使用したlistener.oraファイル内のスタンバイ・データベースのエントリの構成

 

1.

Listeners」を開きます。

 

 

2.

LISTENER」を選択します。

 

 

3.

ドロップダウン・リストから「Database Services」を選択します。

 

4.

Add Database」をクリックします。

 

 

5.

Global Database Nameフィールドに<physical standby hostname>orclsby1.us.oracle.comなど)を入力します。 SIDフィールドに<oracle_home><physical standby sid>orclsby1など)を入力します。

 

6.

File」→「Save Network Configuration」を選択します。

 

 

7.

File」→「Exit」を選択します。

 

 

トピックに戻る

C. ネットワーク上のスタンバイ・データベースの作成

1.

リスナーをリロードします。



2.

ORACLE_HOME/dbsフォルダへ移動し、次の手順を実行します。

リモート・ログイン・パスワード・ファイル(orapworcl)をプライマリ・データベース・システムからスタンバイ・データベース・システムにコピーし、orapworclsby1という名前に変更します。

このパスワード・ファイルは、SYSDBAまたはSYSOPER権限が許可または無効化され、こうした権限を持つユーザーのログイン・パスワードが変更されるたびに、再コピーする必要があります。 異なるサーバーを使用している場合は、FTPその他のリモート・ファイル転送メカニズムが必要となる場合があります。

注:Oracle Database 11gの暗号化や管理ユーザーのOS認証を使用している場合、この手順が必要です。


3.

ORACLE_HOME/dbsフォルダ内で、スタンバイ・システム用に、次の単一パラメータを含むinitorclsby1.oraという名前の初期化パラメータ・ファイルを作成します: DB_NAME=<physical standby SID>orclsby1など)


4.

スタンバイ・システム用に、/u01/app/oracle/adminディレクトリに変更します。 <physical standby SID>(orclsby1など)ディレクトリを作成します。 <physical standby SID>(orclsby1など)ディレクトリに変更し、adumpディレクトリを作成します。


5.

スタンバイ・システム用に、<physical standby SID>(orclsby1など)ディレクトリをデータ・ファイルの$ORACLE_BASE/oradata内に作成します。

注:Oracle Database 11gのインストール方法によっては、次のディレクトリ・パスを追加しなくてはならない場合があります。 $ORACLE_BASE/flash_recovery_areaおよび$ORACLE_BASE/oradata

6.

スタンバイ・システムで、ORACLE_SID環境変数を<physical standby SID>orclsby1など)に設定し、テキスト初期化パラメータ・ファイルを使用したNOMOUNTモードでインスタンスを起動します。



7.

プライマリ・システムで、ORACLE_SID環境変数がプライマリ・データベースの<SID>orclなど)に設定されていることを確認します。




8.

プライマリ・システムで、Oracle RMANを起動して、SYSDBAとしてターゲット・データベースに接続します。 補助データベースに接続します。



9.

プライマリ・システムで、Oracle RMANからcr_phys_sby1.txtスクリプトを実行します。 このスクリプトが完了すると、中間ストレージなしでネットワーク上に新しいスタンバイ・データベースが作成されます。


 

 

 

 

 
 
10.

プライマリ・データベースのログ・スイッチを実行すると、REDOのスタンバイへの送信が開始されます。


11.

スタンバイ・システムで、ORACLE_SID環境変数が<physical standby SID>orclsby1など)に設定されていることを確認し、MRPプロセスを開始します。



トピックに戻る

フィジカル・スタンバイ・データベースの正常な機能の確認

フィジカル・スタンバイ・データベースを作成してREDO転送サービスを設定したら、データベースの変更がプライマリ・データベースからスタンバイ・データベースにすべて転送されていることを確認します。 REDOデータがスタンバイ・データベースで受信されていることを確認するには、まずスタンバイ・データベースの既存のアーカイブREDOログ・ファイルを識別し、プライマリ・データベースでログ・スイッチを強制実行して少数のオンラインREDOログ・ファイルをアーカイブし、再度スタンバイ・データベースを確認します。 このタスクの実行手順は次のとおりです。

1.

スタンバイ・データベースで、V$ARCHIVED_LOGビューの問合せを実行して、既存のアーカイブREDOログ・ファイルを識別します。

query_archived_log.sqlファイルを使用できます。


2.
プライマリ・データベースで、ALTER SYSTEM SWITCH LOGFILE文を発行してログ・スイッチを強制実行し、現在のオンラインREDOログ・ファイル・グループをアーカイブします。

3.

スタンバイ・データベースで、V$ARCHIVED_LOGビューの再問合せを実行して、REDOデータがスタンバイ・データベースに受信され、アーカイブされたことを確認します。


4.

スタンバイ・データベースで、V$ARCHIVED_LOGビューの問合せを実行して、アーカイブREDOログ・ファイルが実際に適用されていることを確認します。 APPLIED列にYESと表示されるまで、再問合せを実行してください。

この手順が完了すれば、フィジカル・スタンバイ・データベースが稼働し、最大パフォーマンス・レベルのデータ保護が行われます。

 

このチュートリアルで学習した内容は、次のとおりです。

スタンバイ・データベース作成前のプライマリ・データベースの準備
ネットワーク上のフィジカル・スタンバイ・データベースの作成
フィジカル・スタンバイ・データベースの正常な機能の確認

トピック・リストに戻る

このアイコンの上にカーソルを置くと、すべてのスクリーンショットが非表示になります。

 

 

 


Copyright (c) Oracle Corporation 2007 All Rights Reserved
Oracle Corporation発行の「Creating a Physical Standby Database」の翻訳版です。

この文書はあくまで参考資料であり、掲載されている情報は予告なしに変更されることがあります。 万一、誤植などにお気づきの場合は、オラクル社までお知らせください。 オラクル社は本書の内容に関していかなる保証もしません。 また、本書の内容に関連したいかなる損害についても責任を負いかねます。

Oracleはオラクル社の登録商標です。
その他の会社名および製品名は、 あくまでその製品および会社を識別する目的にのみ使用されており、 それぞれの所有者の商標または登録商標です。