名前を変更したファイルとファイル グループの復元

ファイルまたはファイル グループの名前は変更でき、他の場所で再利用することもできます。SQL Server データベース エンジンでは、ファイルとファイル グループの内部的な追跡には GUID (グローバル一意識別子) が使用されます。多くの場合、復元操作により、名前を変更したことが認識され、変更が正しく処理されます。

ファイルをオフラインまたはオンラインのどちらで復元しているかによって、変更した名前が復元でどのように処理されるかが異なります。

  • オフライン復元中は、ファイル グループの現在の一覧など、データベース カタログにアクセスできません。復元処理で、指定された名前とバックアップに含まれているファイル名またはファイル グループ名が照合されます。そのため、バックアップを作成してから名前を再利用すると、間違ったファイルが復元されます。ただし、その後、復元処理により、復旧ポイントでデータベースに存在しないすべてのファイルが削除されます。結果として、追加の復元処理やロールフォワード処理が行われることになりますが、データベースは正しくなります。復元では、復旧ポイントが事前に認識されず、不明な時点でデータベースに存在するファイルを予測できないので、この追加作業は回避できません。

  • オンライン復元中は、データベース カタログにアクセスできます。新しいファイル名またはファイル グループ名を復元時に指定した場合、データベース エンジンによって、データベース カタログから対応する GUID が取得され、その GUID を持つファイルまたはファイル グループが復元されます (バックアップにファイルまたはファイル グループが存在する場合)。

    古い名前を指定しても、カタログには含まれていません。GUID がバックアップに含まれている現在のファイルまたはファイル グループの GUID と一致する場合、データベース エンジンによって、そのファイルまたはファイル グループがバックアップから復元されます。

    バックアップから取得した GUID が現在のファイルまたはファイル グループのいずれとも一致しない場合は、エラーが発生します。

再利用されたファイル名またはファイル グループ名を復元時に処理する方法

削除するファイルまたはファイル グループの名前は、後で再利用できます。たとえば、以前のファイル グループの名前を新しいファイルで再利用することができます。このことは、ファイルまたはファイル グループの名前変更と同様です。ただし、名前を再利用すると、場合によってその名前は異なるオブジェクトを参照していることになります。

復元によって、ファイルおよびファイル グループの数と名前の変更が自動的に処理されます。復元手順を簡素化する場合、新しいファイルとファイル グループまたは変更済みファイルとファイル グループの変更直後にそれらのデータベースの完全バックアップを行うことをお勧めします。

ファイルを最後にバックアップしてからそのファイル名を変更し、再利用している場合、データベース エンジンにより、データベース カタログにアクセスできるかどうか、およびデータベース カタログにその名前が含まれているかどうかに基づいてファイルが処理されます。

  • データベース カタログにアクセスでき、ファイル名がカタログに含まれている場合、データベース エンジンによって、対応するファイルまたはファイル グループの GUID が判断され、その GUID を持つファイルまたはファイル グループがバックアップから復元されます。名前が現在のファイルまたはファイル グループのいずれとも一致しない場合は、エラーが発生します。

  • データベースのオフライン復元中であるという理由でカタログにアクセスできない場合、このトピックの前半で説明したように、データベース エンジンによって、バックアップに含まれている情報を使用して復元するオブジェクトが判断されます。

ログ バックアップを行うまでは、データベース エンジンで名前を再利用できないことがあります。この場合、エラーが表示されます。