ファイルの完全バックアップ
このトピックは、複数のファイルまたはファイル グループが含まれている SQL Server データベースに適用されます。
注 |
---|
各種バックアップの概要については、「単純復旧モデルでのバックアップ」または「完全復旧モデルでのバックアップ」を参照してください。 |
ファイルの完全バックアップでは、1 つ以上のファイルまたはファイル グループに含まれるすべてのデータがバックアップされます。完全復旧モデルでは、ファイルの完全バックアップの完全なセットと、ファイル バックアップのすべての範囲に対応したログ バックアップを併用することで、データベースの完全バックアップに等しくなります。
注 |
---|
ファイルの完全バックアップは、通常、ファイルの差分バックアップと明確に区別する場合を除き、ファイル バックアップと呼ばれます。 |
ファイル バックアップを使用すると、残りのデータベースを復元しないで損傷したファイルだけを復元できるので、復旧を高速化できます。たとえば、異なるディスクに配置されている複数のファイルからデータベースが構成されていて、1 つのディスクに障害が発生した場合は、障害が発生したディスク上のファイルだけを復元する必要があります。
データベース内のファイルは、個別にバックアップおよび復元できます。BACKUP ステートメントまたは RESTORE ステートメントでは、構成する各ファイルを個別に指定する代わりにファイル グループ全体を指定できます。(復元中などの理由で) ファイル グループにオフラインのファイルが含まれている場合、ファイル グループ全体がオフラインになり、バックアップできないことに注意してください。
注 |
---|
SQL Server Version 7.0 および SQL Server 2000 では、ファイル バックアップとファイルの差分バックアップにはログ レコードを含んでいませんでした。このような場合にデータを復旧するときは、ログ バックアップを明示的に適用する必要があります。したがって、これらのバージョンでは、完全復旧モデルと一括ログ復旧モデルでのみファイル バックアップを使用できます。SQL Server 2005 以降のバージョンでは、ファイル バックアップには、バックアップ操作の最後までロール フォワードできる十分なログ レコードが既定で含まれています。 |
ファイル バックアップの利点と欠点
ファイル バックアップは、データベース バックアップよりも次の点で優れています。
切り離したメディア障害からの復旧が高速です。破損したファイルを高速に復元できます。
ファイル バックアップでは、データベースの完全バックアップよりもスケジュール設定とメディア処理を柔軟に行うことができます。非常に大規模なデータベースの場合、データベースの完全バックアップは管理しきれません。柔軟性に優れたファイルまたはファイル グループのバックアップは、さまざまな更新特性を備えたデータを含む大規模なデータベースでも役に立ちます。
データベースの完全バックアップと比較した場合のファイル バックアップの大きな欠点は、管理の複雑さです。破損したファイルのバックアップがない場合、メディア障害が発生したときに、データベース全体を復旧できなくなります。したがって、ファイル バックアップの完全なセットを保持しておく必要があります。また、完全復旧モデルまたは一括ログ復旧モデルの場合は、1 つ以上のログ バックアップが、最低でも、最初のファイルの完全バックアップと最新のファイルの完全バックアップの間に対応している必要があります。
これらのバックアップの完全なセットを保持および追跡するタスクは、データベースの完全バックアップの領域要件よりも重要な、時間のかかるタスクであることがあります。
完全復旧モデルでは、管理は煩雑になりますが、ファイルの差分バックアップを使用すれば、復元する必要のあるログ バックアップの数を削減できます。詳細については、「ファイルの差分バックアップ」を参照してください。
注 |
---|
読み取り専用ファイル グループのファイル バックアップは、部分バックアップと組み合わせることができます。部分バックアップには、読み取りと書き込みが可能なファイル グループすべて、および必要に応じて 1 つ以上の読み取り専用ファイル グループが含まれます。詳細については、「部分バックアップ」を参照してください。 |
ファイル バックアップに関する注意点
ファイル バックアップを使用する利点を最大限に活かすには、ディスクのデータのレイアウトと使用パターンを考慮します。次のガイドラインが推奨されます。
変更頻度の高いデータは頻繁にバックアップします。
変更頻度の低いデータはバックアップ回数を少なくします。
読み取り専用のデータは 1 回だけバックアップします。
注 読み取り専用ファイルまたはファイル グループのバックアップはすべての復旧モデルで同じです。
ファイル バックアップ操作は、一度に 1 回のみ実行できます。1 回の操作で複数のファイルをバックアップできますが、ファイルを 1 つだけ復元する必要がある場合でも、復旧に時間がかかる可能性があります。これは、対象のファイルを探すために、バックアップ全体が読み取られるためです。
注 |
---|
個別のファイルは、データベース バックアップから復元できますが、データベース バックアップからファイルの検索と復元を行うと、ファイル バックアップから行う場合よりも時間がかかります。 |
単純復旧モデルに関するその他の注意点
単純復旧モデルでは、読み取りと書き込みが可能なファイルはすべてまとめてバックアップする必要があります。これにより、データベースを一貫性のある時点に復元できます。読み取りと書き込みが可能なファイルまたはファイル グループを個別に指定するのではなく、READ_WRITE_FILEGROUPS オプションを使用します。このオプションにより、読み取りと書き込みが可能なすべてのファイル グループがデータベースにバックアップされます。READ_WRITE_FILEGROUPS を指定して作成されたファイル グループは、部分バックアップと呼ばれます。詳細については、「部分バックアップ」を参照してください。
完全復旧モデルに関するその他の注意点
完全復旧モデルでは、バックアップ ストラテジの残りの部分に関係なく、トランザクション ログをバックアップする必要があります。ファイルの完全バックアップの完全なセットと、ファイル バックアップのすべての範囲に対応したログ バックアップを併用することで、データベースの完全バックアップに等しくなります。
ファイル バックアップとログ バックアップだけを使用したデータベースの復元は、複雑になることがあります。したがって、可能であれば、データベースの完全バックアップを実行して、最初のファイル バックアップの前にログ バックアップを開始することをお勧めします。次の図は、データベースが作成された直後 (時間 t0) に、データベースの完全バックアップを行う (時間 t1) という方法を示しています。この最初のデータベース バックアップによって、トランザクション ログのバックアップを開始できるようになります。トランザクション ログのバックアップは、設定された間隔で実行するようにスケジュールが設定されています。ファイル バックアップは、データベースに対するビジネス要件を最もよく満たす間隔で実行されます。この図は、一度に 1 つずつバックアップされる 4 つのファイル グループのそれぞれを示します。バックアップされる順序 (A、C、B、A) は、データベースのビジネス要件を反映しています。
完全復旧モデルで読み取り/書き込みファイルのバックアップを復元する際には、そのファイルとデータベースのそれ以外の部分との一貫性を確保するために、トランザクション ログをロールフォワードする必要があります。トランザクション ログのバックアップをロールフォワードする数が多くなりすぎないようにするには、ファイルの差分バックアップの使用を検討してください。詳細については、「ファイルの差分バックアップ」を参照してください。
ファイルまたはファイル グループのバックアップの作成
ファイル バックアップを作成するための BACKUP の構文を次に示します。
BACKUP DATABASE database_name <file_or_filegroup> [ ,...n ] TO <backup_device>
注 |
---|
ファイルまたはファイル グループの最初のバックアップでは、ファイルまたはファイル グループ全体をバックアップする必要があります。ファイルまたはファイル グループの完全バックアップを作成した後は、その完全バックアップに基づいたファイルの差分バックアップを 1 つ以上作成できます。詳細については、「ファイルの差分バックアップ」を参照してください。 |
ファイルおよびファイル グループをバックアップするには
SqlBackup (SMO)
注 |
---|
メンテナンス プラン ウィザードではファイル バックアップがサポートされていません。 |
ファイルの差分バックアップの使用
ファイル バックアップは、ファイルの差分バックアップの差分ベースとして使用できます。これにより、ファイル バックアップを一連の短いファイルの差分バックアップで補完することができます。詳細については、「差分バックアップの使用」および「ファイルの差分バックアップ」を参照してください。