データベース バックアップを復元する方法 (Transact-SQL)
このトピックでは、データベースの完全バックアップを復元する方法について説明します。
![]() |
---|
データベースの完全バックアップの復元中は、復元作業を実行するシステム管理者以外は、復元中のデータベースを使用しないでください。 |
前提条件と推奨事項
暗号化されたデータベースを復元するには、データベースの暗号化に使用された証明書または非対称キーにアクセスできることが必要です。証明書または非対称キーがないと、データベースは復元できません。このため、バックアップが必要である間は、データベース暗号化キーの暗号化に使用する証明書を保持しておく必要があります。詳細については、「SQL Server の証明書と非対称キー」を参照してください。
セキュリティを確保するため、不明なソースや信頼されていないソースからのデータベースは、アタッチまたは復元しないことをお勧めします。そのようなデータベースには、意図しない Transact-SQL コードを実行したり、スキーマまたは物理データベース構造を変更することによりエラーを発生させる悪意のあるコードが含まれている可能性があるからです。不明または信頼できないソースのデータベースを使用する前に、実稼働用ではないサーバーでそのデータベースに対し DBCC CHECKDB を実行し、さらに、そのデータベースのストアド プロシージャやその他のユーザー定義コードなどのコードを調べます。
アップグレード後のデータベース互換性レベル
tempdb、model、msdb、および Resource データベースの互換性レベルは、アップグレード後、100 に設定されます。master システム データベースは、互換性レベルが 80 を下回っている場合は、アップグレード前の互換性レベルを保持します。アップグレード前の master の互換性レベルが 80 を下回っている場合は、アップグレード後、80 に設定されます。
アップグレード前のユーザー データベースの互換性レベルが 80 または 90 の場合は、アップグレード後も互換性レベルは変わりません。アップグレード前の互換性レベルが 70 以下の場合、アップグレードされたデータベースの互換性レベルは 80 に設定されます。これは、SQL Server 2008 でサポートされている下限の互換性レベルです。
![]() |
---|
新しいユーザー データベースには、model データベースの互換性レベルが継承されます。 |
手順
データベースの完全バックアップを復元するには
次の項目を指定した RESTORE DATABASE ステートメントを実行し、データベースの完全バックアップを復元します。
復元するデータベースの名前。
データベースの完全バックアップの復元元バックアップ デバイス。
NORECOVERY 句。データベースの完全バックアップを復元した後に適用するトランザクション ログまたはデータベースの差分バックアップがある場合に指定します。
重要
暗号化されたデータベースを復元するには、データベースの暗号化に使用された証明書または非対称キーにアクセスできることが必要です。証明書または非対称キーがないと、データベースは復元できません。このため、バックアップが必要である間は、データベース暗号化キーの暗号化に使用する証明書を保持しておく必要があります。詳細については、「SQL Server の証明書と非対称キー」を参照してください。
必要に応じて、以下も指定します。
- FILE 句。バックアップ デバイス上の復元するバックアップ セットを識別するとき指定します。
![]() |
---|
SQL Server 2005 または SQL Server 2000 のデータベースを SQL Server 2008 に復元した後は、データベースが直ちに使用可能となり、自動的にアップグレードされます。データベースにフルテキスト インデックスがある場合、アップグレード プロセスでは、upgrade_optionサーバー プロパティの設定に応じて、インポート、リセット、または再構築が行われます。アップグレード オプションがインポート (upgrade_option = 2) または再構築 (upgrade_option = 0) に設定されている場合、アップグレード中はフルテキスト インデックスを使用できなくなります。インデックスを作成するデータ量によって、インポートには数時間、再構築には最大でその 10 倍の時間がかかることがあります。なお、アップグレード オプションがインポートに設定されており、フルテキスト カタログが使用できない場合は、関連付けられたフルテキスト インデックスが再構築されます。upgrade_option サーバー プロパティの設定を変更するには、sp_fulltext_service を使用します。 |
例
説明
この例では、テープから AdventureWorks2008R2 の完全データベース バックアップを復元します。
コード
USE master
GO
RESTORE DATABASE AdventureWorks2008R2
FROM TAPE = '\\.\Tape0'
GO
USE master
GO
RESTORE DATABASE AdventureWorks2008R2
FROM TAPE = '\\.\Tape0'
GO