• 検索結果がありません。

6.1 スイッチオーバー

プライマリ・サーバーのメンテナンスなどの計画停止により、プライマリ・サイトが使用不 能になる場合があります。このような場合、スタンバイ・サイトへ一時的にスイッチオーバー することが得策です。この手順は非破壊的であるため、プライマリ・サイトが使用可能にな ると、どちらのデータベースも再構築することなく、もとに戻すことができます。

6.1.1 SQL Plusを使用したスイッチオーバー

データベースが引き受けるロールに対してそれぞれ正しく構成されており、スタンバイ・

データベースがマウント状態にあることを確認します。

RACプライマリからのスイッチオーバーを実行する前に、1つをのぞいたすべてのプライマ リ・インスタンスを停止します(スイッチオーバーが完了したら再開可能)。

RACスタンバイへのスイッチオーバーまたはフェイルオーバーを実行する前に、1つをのぞ いたすべてのスタンバイ・インスタンスを停止します(ロール移行が完了したら再開可能)。

次のSQL文を発行すると、スタンバイへのスイッチオーバーが実行されます(注:リカバリ が必要な場合、項7.1にあるREDOログ変更の適用手順にしたがってください)。

プライマリ・データベースで、スイッチオーバーを開始します。

alter database commit to switchover to physical standby [with session shutdown];

注:プライマリへの接続が存在する場合、'with sessin shutdown'句を使用してください。

新しいスタンバイ・データベースを再起動してマウントします。

(古い)スタンバイ・データベースで、新しいプライマリ・ロールへの切替えをおこないま す。

alter database commit to switchover to primary;

新しいプライマリ・データベースを再起動してオープンします。

新しいスタンバイ・データベースでREDO Applyを開始します。

alter database recover managed standby database [using current logfile] disconnect;

注 : 一 般 的 に 、 長 期 間 に わ た っ て プ ラ イ マ リ ・ サ イ ト が 使 用 不 能 に な る 場 合 は 、 log_archive_dest_state_2'defer'に設定することを推奨します。

6.1.2 Oracle Data Guard Brokerを使用したスイッチオーバー

ここでは、Oracle Data Guard Brokerのコマンドライン・インタフェースに次のコマンドを入 力することで、スタンバイ・データベースへのスイッチオーバーを実行します(Grid Control を使用することもできます)。

dgmgrl sys/mypasswd switchover to SUN;

**<SUN>をスイッチオーバー先のデータベース名で置き換えます。

注:長期間にわたってプライマリ・サイトが使用不能になる場合は、データベースを無効化 してください。

disable database MOON;

フェイルオーバー 6.2

6.2.1 SQL Plusを使用したフェイルオーバー

障害によりプライマリ・データベースが使用不能になった場合、スタンバイ・サイトへのフェ イルオーバーが必要になります。

スタンバイ・データベースを通常処理用にオープンする前に、完了していないすべての変更 をデータベースに適用する必要があります。実行するには、次の手順にしたがいます。

次のコマンドを実行して、管理リカバリ・モードを終了します。

alter database recover managed standby database finish;

スタンバイ・データベースをプライマリ・ロールに切り替え、通常モードでオープンします。

alter database commit to switchover to primary;

alter database open;

6.2.2 Oracle Data Guard Brokerを使用したフェイルオーバー

同じ処理をOracle Data Guard Brokerから実行できます。次のコマンドを使用します。

dgmgrl sys/mypasswd failover to SUN;

6.3 強制フェイルオーバー

場合によって、標準フェイルオーバーを実行できないことがあります。このような場合、強 制フェイルオーバーを実行できます。強制フェイルオーバーは破壊的であるため、一度起動 すると、残っているスタンバイ・データベースがあってもこれを再構築する必要があります。

SRLを使用する場合、次のコマンドを実行します。

alter database recover managed standby database finish force;

次に、以下のコマンドを実行します。

alter database activate standby database [skip standby logfile];

shutdown immediate;

startup mount;

alter database open resetlogs;

6.3.1 Oracle Data Guard Brokerを使用した強制フェイルオーバー 同じ処理をOracle Data Guard Brokerからも実行できます。

dgmgrl sys/mypasswd failover to SUN immediate;

スタンバイ・データベースの読取り専用オープン

レポートやデータ・チェックを実行するために、スタンバイ・データベースを読取り専用モー ドでオープンできます。実行するには、以下の手順にしたがいます。

6.4

1. 管理リカバリを停止します。

alter database recover managed standby database cancel;

2. データベースをオープンします。

alter database open read only;

または、スタンバイ・データベースで'通常'起動を実行するとデータベースが読取り専用モー ドでオープンされます。

注:読取り専用モードでオープンしている間、変更は受信されますがスタンバイ・データベー スへ適用されません。

リアルタイム適用/リアルタイム問合せ

Oracle 11gでは、Oracle Data Guardを読取り専用でオープンしながらREDO変更を適用する 機能が導入されました。この機能は、リアルタイム適用/リアルタイム問合せと呼ばれていま す。有効化するには、SQL Plusを使用して次の手順にしたがいます。

6.5

1. スタンバイ・データベースに接続します。

sqlplus / as sysdba 2. 管理リカバリを取り消します。

alter database recover managed standby database cancel;

3. データベースをオープンします。

alter database open;

4. 管理リカバリを再開します。

alter database recover managed standby database disconnect;

関連したドキュメント