ログ配布について (SQL Server)

適用対象:yesSQL Server (サポートされているすべてのバージョン)

SQL Server ログ配布を使用すると、トランザクションログバックアップを、プライマリサーバーインスタンスのプライマリデータベースから、別のセカンダリサーバーインスタンスの1つ以上のセカンダリデータベースに自動的に送信できます。 トランザクション ログ バックアップはセカンダリ データベースごとに個別に適用されます。 オプションで用意する 3 台目のサーバー インスタンス ( 監視サーバー) では、バックアップ操作と復元操作の履歴と状態が記録されます。また、これらの操作がスケジュールどおりに実行されなかった場合に警告を通知することもできます。

このトピックの内容

メリット

  • では、1つのプライマリデータベースと1つ以上のセカンダリデータベースに対するディザスターリカバリーソリューションが提供されます。それぞれのデータベースは、SQL Server の個別のインスタンスにあります。

  • 復元ジョブの間のセカンダリ データベースへの制限付きの読み取り専用アクセスをサポートします。

  • プライマリ サーバーでプライマリ データベースのログをバックアップする時点と、セカンダリ サーバーがそのログ バックアップを復元 (適用) する時点との間に生じる遅延時間をユーザーが指定できます。 たとえば、プライマリ データベースでデータが誤って変更された場合などに、長い遅延が役立ちます。 誤った変更にすぐに気付いた場合、遅延があれば、変更が反映される前に、セカンダリ データベースにあるまだ変更されていないデータを取得できます。

用語と定義

プライマリ データベース
実稼働サーバーである SQL Server のインスタンス。

プライマリ データベース
別のサーバーにバックアップするプライマリ サーバーのデータベース。 SQL Server Management Studio を使用したログ配布構成の管理は、すべてプライマリデータベースから実行されます。

セカンダリ データベース
プライマリデータベースのウォームスタンバイコピーを保持する SQL Server のインスタンス。

セカンダリ データベース (secondary database)
プライマリ データベースのウォーム スタンバイ コピー。 セカンダリ データベースは、RECOVERING と STANDBY のどちらかの状態にすることができます。この状態では、データベースを制限付きの読み取り専用アクセスで使用できます。

監視サーバー
次のようなログ配布のすべての詳細を追跡する、SQL Server のオプションのインスタンス。

  • プライマリ データベースのトランザクション ログが最後にバックアップされた日時

  • セカンダリ サーバーでバックアップ ファイルが最後にコピーおよび復元された日時

  • バックアップ障害の警告に関する情報

重要

監視サーバーは、一度構成すると、最初にログ配布を削除しない限り変更できません。

バックアップ ジョブ (backup job)
バックアップ操作を実行し、ローカルサーバーと監視サーバーに履歴を記録し、古いバックアップファイルと履歴情報を削除する SQL Server エージェントジョブ。 ジョブ カテゴリの "ログ配布のバックアップ" は、ログ配布を有効にしたときにプライマリ サーバー インスタンスで作成されます。

コピー ジョブ (copy job)
プライマリサーバーからセカンダリサーバー上の構成可能なコピー先にバックアップファイルをコピーし、セカンダリサーバーと監視サーバーの履歴をログに記録する SQL Server エージェントジョブ。 ジョブ カテゴリの "ログ配布のコピー" は、データベースでログ配布を有効にしたときに各セカンダリ サーバーのログ配布構成で作成されます。

復元ジョブ (restore job)
コピーしたバックアップファイルをセカンダリデータベースに復元する SQL Server エージェントジョブ。 この操作により、ローカル サーバーと監視サーバーの履歴ログが記録され、古いファイルと履歴情報が削除されます。 ジョブ カテゴリの "ログ配布のログ復元" は、データベースでログ配布を有効にしたときにセカンダリ サーバー インスタンスで作成されます。

警告ジョブ (alert job)
指定されたしきい値内でバックアップまたは復元操作が正常に完了しない場合に、プライマリデータベースとセカンダリデータベースに対して警告を生成する SQL Server エージェントジョブ。 ジョブ カテゴリの "ログ配布の警告" は、データベースでログ配布を有効にしたときに監視サーバー インスタンスで作成されます。

ヒント

警告 1 件につき警告番号を指定する必要があります。 また、警告が発生するとオペレーターに通知されるよう警告を構成してください。

ログ配布の概要

ログ配布は、次に示す 3 つの操作から構成されます。

  1. プライマリ サーバー インスタンスでトランザクション ログをバックアップする。

  2. セカンダリ サーバー インスタンスにトランザクション ログ ファイルをコピーする。

  3. セカンダリ サーバー インスタンスでログ バックアップを復元する。

ログは、複数のセカンダリ サーバー インスタンスに配布できます。 その場合、操作 2. と操作 3. が各セカンダリ サーバー インスタンスに対して繰り返し実行されます。

ログ配布構成は、自動的にはプライマリ サーバーからセカンダリ サーバーにフェールオーバーされません。 プライマリ データベースが使用できなくなった場合は、任意のセカンダリ データベースを手動でオンラインにできます。

セカンダリ データベースをレポート作成に使用できます。

さらに、ログ配布構成の警告を構成できます。

通常のログ配布構成

次の図に、プライマリ サーバー インスタンス、3 台のセカンダリ サーバー インスタンス、および監視サーバー インスタンスを使用するログ配布構成を示します。 この図に示されているバックアップ ジョブ、コピー ジョブ、および復元ジョブの実行手順は、次のようになります。

  1. プライマリ サーバー インスタンスがバックアップ ジョブを実行し、プライマリ データベースのトランザクション ログをバックアップします。 このサーバー インスタンスは、次にログ バックアップをプライマリ ログ バックアップ ファイルに配置し、バックアップ フォルダーに送信します。 この図では、バックアップ フォルダーは共有ディレクトリ ("バックアップ共有") にあります。

  2. 3 台のセカンダリ サーバー インスタンスは、それぞれのコピー ジョブを実行し、プライマリ ログ バックアップ ファイルをローカルのコピー先フォルダーにコピーします。

  3. 各セカンダリ サーバー インスタンスは、それぞれの復元ジョブを実行し、ログ バックアップをローカルのコピー先フォルダーからローカル セカンダリ データベースに復元します。

プライマリ サーバー インスタンスおよびセカンダリ サーバー インスタンスは、それぞれの履歴および状態を監視サーバー インスタンスに送信します。

Configuration showing backup, copy, & restore jobs

相互運用性

ログ配布は、SQL Server の次の機能またはコンポーネントと共に使用できます。

Note

Always On 可用性グループとデータベースミラーリングは相互に排他的です。 これらの機能のいずれかに対して構成されたデータベースを他の機能用に構成することはできません。

関連タスク

参照

Always On 可用性グループの概要 (SQL Server)