TimesTen In-Memory Databaseでのアクティブ・スタンバイ・ペア

アクティブ・スタンバイ・ペア構成には、アクティブ・データベース、スタンバイ・データベースおよびオプションの読取り専用サブスクライバ・データベースが含まれます。スタンバイ・データベースはアクティブ・データベースから更新を受け取り、その変更をオプションの読取り専用サブスクライバ・データベースに転送します。すべての更新は、アクティブ・データベースに直接送られます。スタンバイ・データベースは、レポート・サーバーなどの読取り専用アプリケーションにも使用できます。

この項では、アクティブ・スタンバイ・ペアを設定および管理する方法について説明します。アクティブ・スタンバイ・ペアを設定する前に、TimesTen 11.2.1 Databaseソフトウェアをアクティブ・サーバーおよびスタンバイ・サーバーの両方にインストールする必要があります。また、インスタンス管理者ユーザーの名前は、両方のインストールで同じである必要があります。

アクティブ・スタンバイ・ペアの設定

TimesTenインメモリー・データベースでアクティブ・スタンバイ・ペアを設定する構成手順の概要を次に示します。

1. データベースの作成 アクティブ・スタンバイ・ペア構成を設定するには、動作するデータベースが必要です。このデータベースは、アプリケーション・ユーザーが所有する1つ以上の表を含める必要があります。また、すべての表に、主キー索引が必要です。
既存のデータベースがある場合は、この手順をスキップできます。
2. アクティブ・スタンバイ・ペアを管理するユーザーの作成 このデータベースには、ADMIN権限を持つユーザーを含める必要があります。このユーザーは、アクティブ・スタンバイ構成を管理するレプリケーション管理者です。
3. アクティブ・スタンバイ・ペアのレプリケーション・スキームの定義 SQL文
CREATE ACTIVE STANDBY PAIRを使用して、アクティブ・データベースおよびスタンバイ・データベースのホスト名やデータ・ストア名など、アクティブ・スタンバイ・ペアの構成を定義します。
4. レプリケーション・エージェントの起動 レプリケーション・エージェント・プロセスによって、TimesTenデータベース間でデータがレプリケートされます。組込みプロシージャttRepStartを使用して、レプリケーション・エージェントを起動します。
5. データベースの状態のアクティブへの設定 組込みプロシージャttRepStateSetを使用して、現行のデータベースをアクティブ・データベースとして指定します。
6. アクティブ・データベースのスタンバイ・サーバーへの複製 スタンバイ・データベースは、アクティブ・データベースをスタンバイ・サーバーにクローニングすることによって作成されます。ttRepAdminユーティリティを使用して、アクティブ・データベースをスタンバイ・サーバーに複製します。
7. スタンバイ・データベースでのレプリケーション・エージェントの起動 スタンバイのレプリケーション・エージェント・プロセスは、アクティブ・データベースのデータを受け取ります。組込みプロシージャttRepStartを使用して、レプリケーション・エージェントを起動します。エージェントが起動されると、データベースは自動的にスタンバイ・モードに入ります。アクティブ・データベースの変更がスタンバイ・データベースに伝播されます。
8. アクティブとスタンバイ間のレプリケーションの確認 アクティブ・データベースで更新を実行した後に、その変更がスタンバイ・データベースにレプリケートされていることを確認します。

このは、前述の構成手順を使用してアクティブ・スタンバイ・ペアを設定する方法を示しています。


アクティブ・データベースで発生した障害からのリカバリ

アクティブ・データベースで発生した障害からリカバリする構成手順の概要を次に示します。これによってスタンバイ・データベースへのフェイルオーバーが実行され、障害が発生したアクティブ・データベースがリカバリされます。次の手順は、非同期レプリケーションおよびRETURN RECEIPT
レプリケーションの場合です。

1. 障害が発生したアクティブ・データベースでのレプリケーション・エージェントの停止 障害が発生したデータベースでレプリケーション・エージェント・プロセスが停止されていない場合は、組込みプロシージャttRepStopを使用して停止します。
2. スタンバイ・データベースの状態のアクティブへの設定 組込みプロシージャttRepStateSetを使用して、現行のスタンバイ・データベースをアクティブ・スタンバイ・ペアの新しいアクティブ・データベースとして指定します。
3. 以前のアクティブ・データベースのfailedとしての指定 新しいアクティブ・データベースで組込みプロシージャttRepStateSaveを実行して、以前のアクティブ・データベースをfailedとして登録します。
4. 障害が発生したデータベースの破棄 ttDestroyユーティリティを使用して、障害が発生したデータベースを削除します。
5. 新しいアクティブ・データベースの複製による新しいスタンバイ・データベースの作成 ttRepAdminを使用して、新しいアクティブ・データベースから新しいスタンバイ・データベースに複製します。
6. スタンバイ・データベースでのレプリケーション・エージェントの起動 組込みプロシージャttRepStartを使用して、レプリケーション・エージェントを起動します。エージェントが起動されると、データベースは自動的にスタンバイ状態になります。新しいアクティブの変更が新しいスタンバイに伝播されます。

このは、前述の手順を使用して、スタンバイ・データベースにフェイルオーバーする方法を示しています。


アクティブ・スタンバイ・ペアの削除

TimesTenインメモリー・データベースからアクティブ・スタンバイ・ペア構成を削除するために必要な手順の概要を次に示します。これによってスタンバイ・データベースが削除され、単一のスタンドアロンのデータベースに戻ります。

1. レプリケーション・エージェントの停止 組込みプロシージャttRepStopを使用して、各データベースでレプリケーション・エージェントを停止します。
2. アクティブ・スタンバイ・ペア・スキームの削除 各データベースでSQL文DROP ACTIVE STANDBY PAIRを使用して、アクティブ・スタンバイ・ペア・スキーマを削除します。
3. スタンバイ・データベースの破棄 ttDestroyユーティリティを使用して、冗長なスタンバイ・データベースを削除します。

このは、前述の手順に従って、アクティブ・スタンバイ・ペアを削除し、スタンドアロンのデータベースに戻す方法を示しています。