Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Anywhere サーバ - データベース管理 » データベースの保守 » バックアップとデータ・リカバリ

 

同期やレプリケーションに関連するデータベースのバックアップ

データベースが SQL Remote インストール環境の一部である場合、Message Agent は古いトランザクションにアクセスできる必要があります。統合データベースの場合、データベース内に SQL Remote インストール環境全体のマスタ・コピーが格納されるので、データを失わないためには完全なバックアップ手順が必要です。

データベースが Replication Server インストール環境のプライマリ・サイトにある場合、Replication Agent は古いトランザクションにアクセスする必要があります。しかし、多くの場合ディスク領域は制限されており、トランザクション・ログを無制限に増大させることは現実的ではありません。

データベースが Mobile Link の設定に関連していて、dbmlsync を使用している場合は、同じことに注意する必要があります。ただし、データベースが Mobile Link の統合データベースである場合は、古いトランザクション・ログは必要ありません。

同期やレプリケーションの環境では、トランザクション・ログの名前を変更してトランザクション・ログを再開するようにバックアップ・オプションを選択できます。このようなバックアップを実行すると、古いトランザクションの情報を保ちつつ、トランザクション・ログが無限に拡大するのを防ぐことができます。

この種類のバックアップを次の図で説明します。

レプリケーションに関連するデータベースの場合、データベース・ファイルとログ・ファイルはバックアップ・ディレクトリにコピーされます。トランザクション・ログの名前は変更され、データベース・ファイルは所定の場所に格納されます。古いトランザクションについての情報は、Message Agent および Replication Agent によって利用可能です。

詳細については、バックアップを作成し、元のトランザクション・ログの名前を変更するを参照してください。

リモート・データベースでは、バックアップ手順は統合データベースの場合ほど重要ではありません。データのバックアップを、統合データベースへのレプリケーションに頼る方法もあります。メディア障害が発生した場合は、統合データベースからリモート・データベースを再抽出しなければならず、レプリケートされていないオペレーションは失われます (ログ変換ユーティリティを使用して、失われたオペレーションのリカバリを実行することは可能です。ログ変換ユーティリティ (dbtran)を参照してください)。

レプリケーションに頼ってリモート・データベースのデータを保護する場合でも、トランザクション・ログが大きくなりすぎるのを防ぐために、リモート・データベースでバックアップを定期的に実行する必要があります。統合データベースで使用するのと同じオプション (ログの名前変更と再起動) を使用して Message Agent を実行し、Message Agent が名前変更されたログ・ファイルにアクセスできるようにします。リモート・データベースで delete_old_logs オプションを On に設定すると、不要になった古いログ・ファイルが Message Agent によって自動的に削除されます。

SQL Remote でのトランザクション・ログの自動名前変更

Message Agent の -x オプションを使用すると、データベース・サーバを停止した際に、リモート・コンピュータでトランザクション・ログの名前を変更する必要がなくなります。-x オプションは、トランザクション・ログが出力メッセージ用にスキャンされた後で、トランザクション・ログの名前を変更します。Message Agent (dbremote)を参照してください。


トランザクション・ログの管理