restorereplica

バックアップから復元された複製の、欠落した操作を置き換えます。

適用性

製品名 コマンド タイプ
MultiSite multiutil サブコマンド
プラットフォーム
UNIX
Windows

概要

restorereplica

[-cl/an clan-name ] [ -site site-name ] -fam/ily family-name
-u/ser username [ -p/assword ] password [ -force] [ -completed ]
[ -replace] [ replica... ]

説明

重要: このコマンドは、バックアップから複製を復元した後すぐに実行してください。復元された複製でこのコマンドを実行する前に通常の開発を続行すると、ファミリー内の複製間で修復不能の不整合が発生します。

restorereplica は、以下のようにして、バックアップから復元された複製内の欠落した変更を置換します。

  1. 他の複製への更新要求を含む特殊な更新パケットを、現在の複製に作成させます。
  2. 現在の複製をロックして、復元の処理中であると複製をマーク付けします。
  3. lsreplica -long で、現在の複製に復元更新を送信する複製を表示します。

現在の複製は、複製をファミリーの最新の状態に更新するために必要なすべての復元更新を (syncreplica -import を使用して) 受け取って適用するまで、復元状態を保ちます。集合的に、これらの更新には、現在の複製に障害が発生する前に行われた変更などの、バックアップが行われた以降のファミリーに対するすべての変更内容が組み込まれています。

現在の複製からの最後の同期エクスポートより後に行われた変更は回復できません。例えば、複製を水曜日の午後 12:30 にバックアップし、木曜日の午後 3:00 に最後の同期エクスポートを行った場合は、木曜日の午後 3:00 までに行われたすべての変更はリカバリできます。 この以降のすべての変更は失われます。

複製の復元手順の説明については、『』の「データベースの複製の復元」を参照してください。

複製のロック

restorereplica は現在の複製をロックします。ロックすると、syncreplica -export コマンドと syncreplica -import コマンドの実行により復元が処理されている間、現在の複製に対して他の変更は行われません。

syncreplica が最後の必須更新を適用すると、復元処理が完了して複製をアンロックすることを示すメッセージが表示されます。

復元処理の最適化

デフォルトでは、restorereplica は、ファミリー内の他のすべての複製からの復元更新を (直接または間接的に) 複製が受信するように要求します。syncreplica コマンドは、すべての更新がインポートされた後でのみ、復元が完了したことを示すメッセージを表示します。

ある場合には、復元処理の正確さを損なわないで、この要件を緩和することができます。複製は、ただ 1 つの複製からの復元更新を受信すると、最新の状態になります。つまり、複製がバックアップ バージョンから復元される前に、更新を送信した先の最後の複製です。その最終更新複製の名前 (または複製のリスト。この 1 つは最終更新複製でなければならない) を restorereplica に指定できます。syncreplica は、指定されたすべての複製から復元更新を受信後に、復元完了メッセージを表示します。

警告: この最適化を誤って使用すると、復元された複製に他の複製との修復不能の不整合が発生することがあります。

制限

スーパー ユーザー権限が必要です。

オプションと引数

所属、サイト、ファミリーの指定

デフォルト
所属: このサイトで複製された最初の所属です。このホストに複数のデータベース セット接続が登録されている場合は、-clan を指定する必要があります。

サイト: 現在のサイトです。このホストに複数のサイトがある場合は、-site を指定する必要があります。

ファミリー: デフォルトはありません。ファミリーを指定する必要があります。

-cl/an clan-name
複製の所属の名前。
-site site-name
複製のサイトの名前。
-fam/ily family-name
ユーザー データベース ファミリー: ユーザー データベースの作成時に付けられたデータベース名。

スキーマ リポジトリ ファミリー: 適用されない。ユーザー データベース ファミリーのメンバを自動的に復元する場合には、必要ならば、関連スキーマ リポジトリの複製の更新が要求されます。

ユーザー名とパスワードの指定

デフォルト
ユーザー名とパスワードを指定する必要があります。
-u/ser user
スーパー ユーザー権限を持つユーザーの名前です。
-p/assword password
指定したユーザーに関連付けられたパスワードです。

対話式プロンプトの抑止

デフォルト
restorereplica は、確認のプロンプトを出します。
-f/orce
確認ステップを抑止します。

必須の更新数の削減

デフォルト
複製には、ファミリーの他のすべてのメンバからの復元更新が必要です。syncreplica コマンドは、すべての更新が処理された後でのみ、複製が完全に復元されたと宣言します。
重要: 次のオプションを誤って使用すると、欠落したすべての変更内容を他の複製から受信する前に、複製に新規変更が行われることがあります。これにより、ファミリー全体が修復不能の不整合な状態になる場合があります。
-completed
通常の復元処理を無効にします。複製を復元済みとマークし、データベースをアンロックします。このオプションを使用すると、復元パケット要求は送信できなくなり、この複製で復元パケットを再生できなくなります。
-rep/lace replica...
復元更新が要求された元の複製のサブセットを変更します。replica をサイト名として指定します。

複製の復元の例については、バックアップから複製を復元するを参照してください。


フィードバック