次の方法で共有


データベースの差分バックアップを作成する (SQL Server)

このトピックでは、SQL Server Management Studio または Transact-SQL を使用して SQL Server 2014 でデータベースの差分バックアップを作成する方法について説明します。

このトピックについて

開始する前に

制限事項と制約条件

  • BACKUP ステートメントは、明示的または暗黙的なトランザクションでは使用できません。

[前提条件]

  • データベースの差分バックアップを作成するには、以前の完全データベース バックアップが存在する必要があります。 選択したデータベースがバックアップされていない場合は、差分バックアップを作成する前にデータベースの完全バックアップを実行します。 詳細については、「フル データベース バックアップの作成 (SQL Server)」を参照してください。

推奨事項

  • 差分バックアップのサイズが大きくなると、差分バックアップを復元すると、データベースの復元に必要な時間が大幅に長くなる可能性があります。 そのため、データの新しい差分ベースを確立するために、設定された間隔で新しい完全バックアップを作成することをお勧めします。 たとえば、データベース全体の週単位の完全バックアップ (つまり、データベースの完全バックアップ) の後に、その週の定期的な一連の差分データベース バックアップを実行できます。

安全

権限

BACKUP DATABASE 権限と BACKUP LOG 権限は、既定では、 sysadmin 固定サーバー ロール、 db_owner 固定データベース ロール、および db_backupoperator 固定データベース ロールのメンバーに与えられています。

バックアップ デバイスの物理ファイルに対する所有と許可の問題によって、バックアップ操作が妨げられることがあります。 SQL Server では、デバイスに対して読み書きを実行できる必要があります。 SQL Server サービスが実行されているアカウントには書き込み権限が必要です。 ただし、システム テーブルにバックアップ デバイスのエントリを追加する sp_addumpdeviceでは、ファイル アクセスの権限は確認されません。 バックアップデバイスの物理ファイルに関するこのような問題は、バックアップまたは復元が試行されたときに物理リソースにアクセスするまで表示されない場合があります。

SQL Server Management Studio の使用

データベースの差分バックアップを作成するには

  1. Microsoft SQL Server データベース エンジンの適切なインスタンスに接続したら、オブジェクト エクスプローラーでサーバー名をクリックしてサーバー ツリーを展開します。

  2. [データベース]を展開し、目的のデータベースに応じて、任意のユーザー データベースを選択するか、または [システム データベース] を展開して任意のシステム データベースを選択します。

  3. データベースを右クリックし、[ タスク] をポイントして、[ バックアップ] をクリックします。 [データベースのバックアップ] ダイアログ ボックスが表示されます。

  4. [データベース] ボックスに、適切なデータベース名が表示されていることを確認します。 必要に応じて、このボックスの一覧から別のデータベースを選択することもできます。

    任意の復旧モデル (完全、一括ログ、または単純) に対して差分バックアップを実行できます。

  5. [ バックアップの種類 ] ボックスの一覧で、[ 差分] を選択します。

    重要

    [差分] が選択されている場合は、[バックアップのみコピー] チェック ボックスがオフになっていることを確認します。

  6. [バックアップ コンポーネント] として、[データベース] をクリックします。

  7. [名前] ボックスに表示された既定のバックアップ セット名をそのまま使用するか、または別のバックアップ セット名を入力します。

  8. オプションで、 [説明] ボックスに、バックアップ セットの説明を入力します。

  9. バックアップ セットの有効期限を指定します。

    • 特定の日数後にバックアップ セットの有効期限を切にするには、[ ] (既定のオプション) をクリックし、セットの作成後にセットの有効期限が切れる日数を入力します。 この値は 0 ~ 99999 日です。値が 0 日の場合は、バックアップ セットの有効期限が切れないことを意味します。

      既定値は、[サーバーのプロパティ] ダイアログ ボックス ([データベースの設定] ページ) の [既定のバックアップ メディアリテンション期間 (日数)] オプションで設定されます。 これにアクセスするには、オブジェクト エクスプローラーでサーバー名を右クリックし、プロパティを選択します。をクリックし 、[データベース設定] ページを 選択します。

    • バックアップ セットの有効期限を特定の日付に設定するには、[ オン] をクリックし、セットの有効期限を入力します。

  10. [ ディスク ] または [テープ] をクリックして、バックアップ先の種類を選択します。 1 つのメディア セットを含む最大 64 台のディスク ドライブまたはテープ ドライブのパスを選択するには、[ 追加] をクリックします。 選択したパスは、 [バックアップ先] ボックスの一覧に表示されます。

    バックアップ先を削除するには、バックアップ先を選択して [ 削除] をクリックします。 バックアップ先の内容を表示するには、バックアップ先を選択して [ コンテンツ] をクリックします。

  11. 詳細オプションを表示または選択するには、[ページの選択] ウィンドウの [オプション] をクリックします。

  12. 次のいずれかをクリックして、[ メディアの上書き ] オプションを選択します。

    • 既存のメディア セットにバックアップする

      このオプションでは、[既存の バックアップ セットに追加] または [ 既存のすべてのバックアップ セットを上書きする] をクリックします。 必要に応じて、[ メディア セット名とバックアップ セットの有効期限の確認 ] チェック ボックスをオンにし、必要に応じて、[ メディア セット名 ] テキスト ボックスに名前を入力します。 名前が指定されていない場合は、空白の名前を持つメディア セットが作成されます。 メディア セット名を指定すると、メディア (テープまたはディスク) がチェックされ、実際の名前がここで入力した名前と一致するかどうかが確認されます。

      メディア名を空白のままにしてメディアに対してチェックボックスをオンにした場合、成功はメディア上のメディア名も空白であることを意味します。

    • 新しいメディア セットにバックアップし、既存のすべてのバックアップ セットを消去する

      このオプションでは、[ 新しいメディア セット 名] テキスト ボックスに名前を入力し、必要に応じて、[ 新しいメディア セットの説明 ] テキスト ボックスにメディア セットを記述します。

  13. [ 信頼性 ] セクションで、必要に応じて次のことを確認します。

  14. テープ ドライブにバックアップする場合 ([全般] ページの [宛先] セクションで指定されているとおり)、[バックアップ後にテープをアンロードする] オプションがアクティブになります。 このオプションをクリックすると、[ アンロードする前にテープを巻き戻す ]オプションが有効になります。

    トランザクション ログをバックアップする場合を除き、[トランザクション ログ] セクションのオプションは非アクティブです ([全般] ページの [バックアップの種類] セクションで指定)。

  15. SQL Server 2008 Enterprise 以降では、 バックアップ圧縮がサポートされています。 既定では、バックアップが圧縮されるかどうかは、 バックアップ圧縮の既定 のサーバー構成オプションの値によって異なります。 ただし、現在のサーバー レベルの既定値に関係なく、[バックアップの圧縮] をオンにしてバックアップを圧縮できます。また、[ バックアップ圧縮しない] をオンにすることで圧縮を防ぐことができます。

    現在のバックアップ圧縮の既定値を表示するには

    または、メンテナンス プラン ウィザードを使用して、データベースの差分バックアップを作成することもできます。

Transact-SQL の使用

データベースの差分バックアップを作成するには

  1. BACKUP DATABASE ステートメントを実行して、データベースの差分バックアップを作成し、次のように指定します。

    • バックアップするデータベースの名前。

    • データベースの完全バックアップが書き込まれるバックアップ デバイス。

    • DIFFERENTIAL 句は、データベースの最後の完全バックアップ作成後に変更された部分だけをバックアップするように指定します。

    必要な構文は次のとおりです。

    BACKUP DATABASE database_name を差分で <backup_device> する

例 (Transact-SQL)

次の使用例は、 MyAdvWorks データベースの完全バックアップと差分データベース バックアップを作成します。

-- Create a full database backup first.  
BACKUP DATABASE MyAdvWorks   
   TO MyAdvWorks_1   
   WITH INIT;  
GO  
-- Time elapses.  
-- Create a differential database backup, appending the backup  
-- to the backup device containing the full database backup.  
BACKUP DATABASE MyAdvWorks  
   TO MyAdvWorks_1  
   WITH DIFFERENTIAL;  
GO  

こちらもご覧ください

差分バックアップ (SQL Server)
データベースの完全バックアップの作成 (SQL Server)
ファイルとファイル グループのバックアップ (SQL Server)
データベースの差分バックアップの復元 (SQL Server)
トランザクション ログ バックアップの復元 (SQL Server)
メンテナンス プラン
完全ファイル バックアップ (SQL Server)