メディア セット、メディア ファミリ、およびバックアップ セット

1 つまたは複数の一連のバックアップ メディアにあるバックアップによって、1 つのメディア セットが構成されます。メディア セットとは、テープやディスク ファイルなどのバックアップ メディアの順序付きコレクションのことです。バックアップ メディアは、1 つまたは複数のバックアップ操作によって、固定型の多数のバックアップ デバイスを使用して書き込まれています。1 つのメディア セットでは、テープ ドライブまたはディスク ドライブのいずれかを使用し、両方は使用しません。たとえば、あるメディア セットに関連付けられているバックアップ デバイスが、\\.\TAPE0、\\.\TAPE1、\\.\TAPE2 という 3 台のテープ ドライブである場合を想定します。このメディア セットにはテープのみが含まれます。テープの数は最低 3 本です (デバイスごとに 1 本)。バックアップ デバイスの種類と台数はメディア セットの作成時に決定され、変更できません。ただし、必要に応じて、バックアップ操作と復元操作の間に特定のデバイスを同じ種類のデバイスと交換できます。

メディア セットは、バックアップ メディアをフォーマットすることによって、バックアップ操作中にバックアップ メディア上に作成されます。詳細については、「新しいメディア セットの作成」を参照してください。フォーマットが終了すると、各ファイルまたはテープにメディア セット用のメディア ヘッダーが書き込まれ、バックアップ コンテンツの受け入れ準備が整います。ヘッダーが書き込まれると、バックアップ操作用に指定されているすべてのバックアップ デバイス上のバックアップ メディアに指定のデータをバックアップする作業に進みます。

注意

メディア セットは、メディア ボリューム (テープまたはディスク ファイル) の破損に備えてミラー化できます。詳細については、「ミラー化バックアップ メディア セットの使用」を参照してください。

バックアップ圧縮は SQL Server 2008 Enterprise で導入されました。SQL Server 2008 R2 以降、バックアップ圧縮は SQL Server 2008 R2 Standard 以上のエディションでサポートされています。圧縮されたバックアップは、SQL Server 2008 以降の各エディションで復元できます。圧縮されたバックアップと圧縮されていないバックアップを 1 つのメディア セット内で同時に作成することはできません。詳細については、「バックアップの圧縮 (SQL Server)」を参照してください。

メディア ファミリ

メディア ファミリとは、ミラー化されていない単一のデバイスまたはメディア セット内のミラー化されている一連のデバイスで作成されたバックアップの集合です。メディア セット用に使用されているバックアップ デバイスの数によって、メディア セット内のメディア ファミリの数が決まります。たとえば、ミラー化されていない 2 つのバックアップ デバイスを使用しているメディア セットには、2 つのメディア ファミリが含まれます。

注意

ミラー化メディア セットでは、各メディア ファミリがミラー化されます。たとえば、6 つのバックアップ デバイスを使用して 1 つのメディア セットをフォーマットし、そのメディア セットで 2 つのミラーが使用されている場合は、3 つのメディア ファミリがあります。各ファミリには、2 つの同等のバックアップ データ コピーが含まれています。ミラー化メディア セットの詳細については、「ミラー化バックアップ メディア セットの使用」を参照してください。

メディア ファミリ内の各テープまたはディスクには、メディア シーケンス番号が割り当てられています。ディスクのメディア シーケンス番号は常に 1 です。テープ メディア ファミリでは、先頭テープのシーケンス番号が 1 で、2 番目のテープのシーケンス番号が 2 というように割り当てられます。詳細については、「メディア セットとメディア ファミリの使用」を参照してください。

メディア ヘッダー

バックアップ メディアの各ボリューム (ディスク ファイルまたはテープ) には、メディア ヘッダーが含まれています。メディア ヘッダーは、そのテープ (またはディスク) を使用する最初のバックアップ操作によって作成されます。このヘッダーは、メディアが再フォーマットされるまでそのままの状態で維持されます。

メディア ヘッダーには、メディア (ディスク ファイルまたはテープ) を識別するために必要な情報と、そのメディアが属するメディア ファミリ内での位置を識別するために必要な情報がすべて含まれています。この情報には、次の項目が含まれています。

  • メディア名。

    メディア名は省略可能ですが、メディアを明確に識別するためにメディア名を常に使用することをお勧めします。メディア名は、そのメディアをフォーマットしたユーザーが指定します。

  • メディア セットの一意の識別番号。

  • メディア セット内のメディア ファミリの数。

  • このメディアを含んでいるメディア ファミリのシーケンス番号。

  • メディア ファミリの一意の識別番号。

  • メディア ファミリ内でのこのメディアのシーケンス番号。ディスク ファイルの場合、この値は常に 1 になります。

  • メディアの説明に MTF メディア ラベルまたはメディアの説明が含まれているかどうか。

    注意

    バックアップ操作または復元操作で使用するすべてのメディアには、MTF (Microsoft Tape Format) という標準のバックアップ形式が使用されます。MTF が使用されていると、ユーザーは、MTF 固有の説明が含まれたテープ ラベルを指定できます。SQL Server では、他のアプリケーションが書き込んだ MTF メディア ラベルが保持されますが、MTF メディア ラベルの書き込みは行われません。

  • Microsoft Tape Format メディア ラベルまたはメディアの説明 (自由な形式のテキスト)。

  • ラベルを作成したバックアップ ソフトウェアの名前。

  • メディアをフォーマットしたソフトウェア ベンダーの一意のベンダー識別番号。

  • ラベルが作成された日時。

  • セット内のミラーの数 (1 ~ 4)。1 はミラー化されていないデバイスを示します。

SQL Server 2008 では、以前のバージョンの SQL Server でフォーマットされたメディアを処理できます。

重要な注意事項重要

SQL Server 2008 でフォーマットされたメディアは、メディア ヘッダーが変更されているため、SQL Server 7.0 および SQL Server 2000 SP4 より前のリリースでは読み取れません。ただし、SQL Server 2000 SP4 では、メディア ヘッダーの変更がサポートされています。

バックアップ デバイス上のメディアのメディア ヘッダーを読み取るには

バックアップ セット

バックアップ操作が正常に行われると、メディア セットに 1 つのバックアップ セットが追加されます。バックアップ セットは、バックアップが属するメディア セットの観点から表現されます。バックアップ メディアにメディア ファミリが 1 つしかない場合は、そのファミリにバックアップ セット全体が含まれます。バックアップ メディアが複数のメディア ファミリで構成されている場合、バックアップ セットはこれらのファミリ間で分散されます。各メディアのバックアップ セットには、そのバックアップ セットを説明するヘッダーが含まれています。

次の例は、バックアップ デバイスとして 3 つのテープ ドライブを使用し、AdventureWorks2008R2 データベース用に MyAdvWorks_MediaSet_1 というメディア セットを作成する Transact-SQL ステートメントを示しています。

BACKUP DATABASE AdventureWorks2008R2
TO TAPE = '\\.\tape0', TAPE = '\\.\tape1', TAPE = '\\.\tape2'
WITH 
   FORMAT,
   MEDIANAME = 'MyAdvWorks_MediaSet_1';

BACKUP DATABASE AdventureWorks2008R2
TO TAPE = '\\.\tape0', TAPE = '\\.\tape1', TAPE = '\\.\tape2'
WITH 
   FORMAT,
   MEDIANAME = 'MyAdvWorks_MediaSet_1';

このバックアップ操作が正常に実行されると、新しいメディア ヘッダーを含む 1 つの新しいメディア セットと、3 つのテープに分散されている 1 つのバックアップ セットが作成されます。次の図は、この結果を示しています。

メディア ヘッダーと最初のバックアップ セットを 3 つのテープに記録

通常、メディア セットが作成されると、その後のバックアップ操作では、そのメディア セットにバックアップ セットが 1 つずつ追加されます。関連するメディアまたはバックアップ デバイスの数にかかわらず、バックアップ セットで使用されるすべてのメディアによってメディア セットが構成されます。バックアップ セットは、メディア セット内での位置に従ってシーケンス番号が付けられています。この番号により、どのバックアップ セットを復元するかを指定できます。

メディア セットに対するすべてのバックアップ操作で、同じ数および種類のバックアップ デバイスに書き込みを行う必要があります。複数のデバイスがある場合は、最初のバックアップ セットと同様に、後続のすべてのバックアップ セットの内容が、すべてのデバイス上のバックアップ メディアに分散されます。上記の例を続行するには、2 番目のバックアップ操作 (差分バックアップ) で同じメディア セットに情報を追加します。

BACKUP DATABASE AdventureWorks2008R2
TO TAPE = '\\.\tape0', TAPE = '\\.\tape1', TAPE = '\\.\tape2'
WITH 
   NOINIT,
   MEDIANAME = 'AdventureWorksMediaSet1',
   DIFFERENTIAL;

BACKUP DATABASE AdventureWorks2008R2
TO TAPE = '\\.\tape0', TAPE = '\\.\tape1', TAPE = '\\.\tape2'
WITH 
   NOINIT,
   MEDIANAME = 'AdventureWorksMediaSet1',
   DIFFERENTIAL;
注意

NOINIT オプションは既定ですが、わかりやすくするために含まれています。

2 番目のバックアップ操作が正常に終了すると、次のようにバックアップ内容を分散して、2 番目のバックアップ セットがメディア セットに書き込まれます。

2 つ目のバックアップ セットを 3 つのメディア セット テープにまたがって記録

バックアップを復元するとき、使用するバックアップを FILE オプションで指定できます。次の例は、AdventureWorks2008R2 データベースの完全バックアップを復元した後、同じメディア セットに差分バックアップを復元する場合の FILE **=**backup_set_file_number 句の使用法を示しています。メディア セットでは 3 つのバックアップ テープが使用されます。テープが装着されているテープ ドライブは \\.\tape0、tape1、および tape2 です。

RESTORE DATABASE AdventureWorks2008R2 FROM TAPE = '\\.\tape0', TAPE = '\\.\tape1', TAPE = '\\.\tape2'
   WITH 
   MEDIANAME = 'AdventureWorksMediaSet1',
   FILE=1, 
   NORECOVERY;
RESTORE DATABASE AdventureWorks2008R2 FROM TAPE = '\\.\tape0', TAPE = '\\.\tape1', TAPE = '\\.\tape2' 
   WITH 
   MEDIANAME = 'AdventureWorksMediaSet1',
   FILE=2, 
   RECOVERY;
GO

RESTORE DATABASE AdventureWorks2008R2 FROM TAPE = '\\.\tape0', TAPE = '\\.\tape1', TAPE = '\\.\tape2'
   WITH 
   MEDIANAME = 'AdventureWorksMediaSet1',
   FILE=1, 
   NORECOVERY;
RESTORE DATABASE AdventureWorks2008R2 FROM TAPE = '\\.\tape0', TAPE = '\\.\tape1', TAPE = '\\.\tape2' 
   WITH 
   MEDIANAME = 'AdventureWorksMediaSet1',
   FILE=2, 
   RECOVERY;
GO

メディア セット、メディア ファミリ、およびバックアップ セットに関する情報が保存される履歴テーブルの詳細については、「バックアップ情報の表示」を参照してください。

メディア セット内のバックアップ メディアの数は、次のような要因によって決まります。

  • バックアップ デバイスの数

  • バックアップ デバイスの種類

  • バックアップ セットの数

特定のバックアップ デバイス上のバックアップ セットを表示するには