SQL Server のトランザクション ログをバックアップする方法

SQL データベースは、ERP や GRM のシステムだけでなく、他の数多くのクリティカルなビジネス アプリケーションにとっても、中核となるものです。SQL データベースのダウンタイムやデータの消失は、従業員の何時間にも及ぶ作業時間を無駄にする財政上の損失、取引の解消や収益の損失を意味します。ダウンタイムが発生しても、データをできるだけ最新の状態まで保護するには、SQL トランザクション ログのバックアップをより頻繁に取得する必要があります。ログをバックアップすることにより、SQL Server の可用性が最大化され、任意の時点へのデータベースの復元が可能になります。

トランザクション ログは、ネイティブの Microsoft ツールまたはサードパーティ製ソリューションのいずれかで処理することができます。ネイティブ ツールには、SQL Server Management Studio、Transact-SQL (T-SQL)、SQL Server Agent ジョブ、SQL Server メンテナンス プラン、および PowerShell スクリプトが含まれます。これらのオプションを使用する方法の詳細については、Microsoft の TechNet および  MSDNを参照してください。

ここでは、Veeam を中心に説明します。Veeam Backup & Replication (Veeam Availability Suite の一部) は、SQL Server 全体のバックアップに加えて、トランザクション ログのバックアップを実行します。これは、SQL Server の一貫したバックアップを作成するために application-aware image processing (アプリケーション整合性イメージ処理) を提供し、ログのバックアップと切り捨てをサポートします。仮想化された SQL Server 2012 および SQL Server 2014 の場合、Veeam は、AlwaysOn 可用性グループもサポートします。

データベースのプロパティは、トランザクションのロギングをサポートする必要があります。SQL Server は、復元モデルを使用してトランザクション ログを制御します。単純復旧モデルでは、トランザクション ログがバックアップされないため、特定時点への復元を実行することはできません。Veeam Backup & Replication は、デフォルトでは、単純モードのデータベースをログ プロセス ジョブから除外します。完全復旧モデルまたは一括ログ復旧モデルのデータベースの場合のみ、その変更がトランザクション ログ ファイルに記録され、特定時点への復元が可能になります。データベースが完全復旧モードまたは一括ログ復旧モードであることを確認してください。

Veeam Backup & Replication では、トランザクション ログのバックアップ ジョブは、SQL Server VM のバックアップ ジョブに含まれるサブタスクです。このため、まず、SQL Server VM のバックアップ ジョブを作成し、設定します。トランザクションレベルで一貫性のある SQL Server のバックアップを作成するには、application-aware image processing (アプリケーション整合性イメージ処理) を有効にします。

[Applications (アプリケーション)] をクリックして、SQL のオプションを設定します。

[Edit (編集)] 設定で、[Process transaction logs with this job (このジョブでトランザクション ログを処理する)] を選択します。

ログ ファイルは、データベースのロードと共にサイズが増大するので、ログ (.LDF) ファイルのサイズを制御するには、トランザクション ログを定期的にバックアップする必要があります。変更の量や頻度によっては、.LDF ファイルがデータベース自体の 2 倍以上の大きさに増大する可能性があります。割り当てられたストレージ スペースが使い果たされると、新しいトランザクションは開始しません。トランザクション ログをバックアップしている場合、ログは切り捨てられ、ストレージ スペースを再利用します。ログのバックアップと切り捨てにより、ストレージ スペースのオーバーフローが防止されます。

[SQL] タブで、希望するトランザクション ログの管理方法を選択します。使用可能なオプションは、ほとんどすべての SQL 要件に対応します。トランザクションの多い SQL Server データベースの場合、DBA は、15 分以下の間隔でトランザクション ログをバックアップします。ログ ファイルには、データベースへの変更のみが含まれるので、短い RPO を簡単に達成することができます。ログのバックアップは、SQL Server の増分バックアップよりもはるかに高速で、本番環境に影響しません。

Veeam Backup & Replication では、トランザクション ログのバックアップ ジョブは、インターバル バックグラウンド プロセスで、定義されたスケジュールに従って、毎回自動的に開始します。

ログのバックアップは、対応する SQL Server VM のバックアップと共に、.VLB ファイルとしてバックアップ リポジトリに保存されます。

Veeam Backup & Replication は、完全なイメージベースの SQL Server VM のバックアップと、増分チェーンおよびログ バックアップ チェーンを提供します。データベースの復元の場合、Veeam Explorer™ for Microsoft SQL を使用することができます。これは、データベースの復元シナリオとして、最新のバックアップ復元ポイントからの復元、ログの復元による特定時点への復元、およびログの復元による特定のトランザクションへの復元をサポートします。この Veeam ブログには、Rick Vanover 氏が書いた Veeam Explorer による SQL データベースの復元 に関する記事が掲載されています。こちらを強くお勧めします。

最後までお読みいただきありがとうございました。いつも通りですが、コメントをお待ちしております。

Exit mobile version