バックアップから複製を復元する

このトピックでは、バックアップから複製を復元する方法を説明します。
このタスクについて
バックアップから複製を復元するには、次の手順を実行します。
  1. 製造元データベース ツールを使用して、複製データベースをバックアップから復元します。
  2. restorereplica コマンドを使用して、復元手順を開始します。

    このコマンドは、複製に特殊なロックを設定します。この時点からステップ 6 が完了するまでの間に、syncreplica -import コマンドが一時的にロックを調整して更新の適用を許可し、その後に完全なロックを復元します。この間、syncreplica -import コマンドを使用することでのみ、複製を変更することができます。

  3. すべての更新パケットが宛先複製で処理済みであることを確認してください。
  4. 復元した複製で、ファミリー内の他のすべての複製に対して更新パケットを生成し、それをシブリング複製に送信します。

    パケットは通常の同期方法で送信できます。複製をより速く復旧するには、syncreplica -export -fship を使用してパケットを作成します。

    複製は特殊な復元状態にあるため、送信される各更新パケットには、確認応答を求める特殊な要求が含まれています。また更新パケットには、 複製の古いエポック番号も含まれています。このエポック番号は、ステップ 1 で復元を行った結果、現在のエポック番号になっています。 各宛先複製では、これらの番号を使用してこの複製に対する行のロールバックを行います。

  5. ファミリー内の各複製が更新パケットを復元された複製に送信するまで待ちます。ステップ 4 のように、更新パケットの作成と配信の速度を上げることができます。

    これらの更新パケットをすべて合わせると、複製の作成操作を含め、バックアップから (記憶が失われる前に複製が送信された) 最後の更新までの間に行われたすべての操作が含まれています。(これらのパケットには、他の複製で行われたより最近の操作も含まれています。) 各受信パケットには、送信ホストからの確認応答も含まれています。

  6. syncreplica -import コマンドを使用して、受信した更新パケットを処理します。ファミリー内の他のすべての複製から確認応答を受信すると、syncreplica -import は、複製の復元が完了したことを次のように報告します。
    Database <name> is unlocked after restoration.

これで、複製での開発作業を再開できるようになりました。


フィードバック