データベースの完全バックアップでは、データベース全体がバックアップされます。 これには、データベースの完全バックアップが復元された後にデータベース全体を復旧できるように、トランザクション ログの一部が含まれます。 データベースの完全バックアップは、バックアップが完了した時点のデータベースを表します。
ヒント
データベースのサイズが大きくなると、データベースの完全バックアップの完了に時間がかかり、より多くのストレージ領域が必要になります。 そのため、大規模なデータベースの場合は、データベースの完全バックアップを一連の 差分データベース バックアップで補完することが必要になる場合があります。 詳細については、「 差分バックアップ (SQL Server)」を参照してください。
重要
データベース バックアップでは TRUSTWORTHY が OFF に設定されています。 TRUSTWORTHY を ON に設定する方法については、「 ALTER DATABASE SET Options (Transact-SQL)」を参照してください。
このトピックの内容
単純復旧モデルでのデータベース バックアップ
単純復旧モデルでは、各バックアップの後に、障害が発生した場合にデータベースが潜在的な作業損失にさらされます。 作業損失の露出は、次のバックアップがゼロに戻り、新しい作業損失露出サイクルが開始されるまで、更新ごとに増加します。 作業損失の露出は、バックアップ間の時間の経過と同時に増加します。 次の図は、データベースの完全バックアップのみを使用するバックアップ戦略の作業損失の露出を示しています。
例 ( Transact-SQL)
次の例では、WITH FORMAT を使用してデータベースの完全バックアップを作成し、既存のバックアップを上書きし、新しいメディア セットを作成する方法を示します。
-- Back up the AdventureWorks2012 database to new media set.
BACKUP DATABASE AdventureWorks2012
TO DISK = 'Z:\SQLServerBackups\AdventureWorksSimpleRM.bak'
WITH FORMAT;
GO
完全復旧モデルでのデータベース バックアップ
完全復旧と一括ログ復旧を使用するデータベースの場合、データベース バックアップは必要ですが、十分ではありません。 トランザクション ログのバックアップも必要です。 次の図は、完全復旧モデルで可能な最も複雑でないバックアップ戦略を示しています。
ログ バックアップを作成する方法については、「 トランザクション ログ バックアップ (SQL Server)」を参照してください。
例 ( Transact-SQL)
次の例では、WITH FORMAT を使用してデータベースの完全バックアップを作成し、既存のバックアップを上書きし、新しいメディア セットを作成する方法を示します。 次に、トランザクション ログをバックアップします。 実際の状況では、一連の定期的なログ バックアップを実行する必要があります。 この例では、 AdventureWorks2012 サンプル データベースが完全復旧モデルを使用するように設定されています。
USE master;
ALTER DATABASE AdventureWorks2012 SET RECOVERY FULL;
GO
-- Back up the AdventureWorks2012 database to new media set (backup set 1).
BACKUP DATABASE AdventureWorks2012
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012FullRM.bak'
WITH FORMAT;
GO
--Create a routine log backup (backup set 2).
BACKUP LOG AdventureWorks2012 TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012FullRM.bak';
GO
データベースの完全バックアップを使用してデータベースを復元する
データベース全体を 1 つの手順で再作成するには、データベースの完全バックアップから任意の場所にデータベースを復元します。 バックアップには十分なトランザクション ログが含まれており、バックアップが完了した時点までデータベースを復旧できます。 復元されたデータベースは、データベース バックアップが完了したときの元のデータベースの状態と一致し、コミットされていないトランザクションを差し引きます。 完全復旧モデルでは、後続のすべてのトランザクション ログ バックアップを復元する必要があります。 データベースが復旧されると、コミットされていないトランザクションがロールバックされます。
詳細については、「 データベースの完全な復元 (単純復旧モデル) 」または「 データベースの完全な復元 (完全復旧モデル)」を参照してください。
関連タスク
データベースの完全バックアップを作成するには
バックアップ ジョブをスケジュールするには
こちらもご覧ください
SQL Server データベースのバックアップと復元
バックアップの概要 (SQL Server)
Analysis Services データベースのバックアップと復元