本主题介绍如何还原完整数据库备份。
重要
还原完整数据库备份的系统管理员必须是当前唯一使用该数据库进行还原的人员。
先决条件和建议
若要还原已加密的数据库,必须有权访问用于加密数据库的证书或非对称密钥。 如果没有证书或非对称密钥,则无法还原数据库。 因此,只要需要备份,就必须保留用于加密数据库加密密钥的证书。 有关详细信息,请参阅 SQL Server Certificates and Asymmetric Keys。
出于安全考虑,建议不要从未知或不受信任的源附加或还原数据库。 此类数据库可能包含恶意代码,这些代码可能会执行非预期的 Transact-SQL 代码,或者通过修改架构或物理数据库结构导致错误。 在从未知或不受信任的源使用数据库之前,请在非生产服务器上对数据库运行 DBCC CHECKDB ,并在数据库中检查代码,例如存储过程或其他用户定义的代码。
升级后的数据库兼容性级别
升级后, tempdb、 model、 msdb和资源数据库的 兼容性级别设置为 SQL Server 2014 的兼容级别。 主系统数据库会保留升级前的兼容级别,除非该级别小于 100。 如果 主服务器的兼容 级别在升级前小于 100,则升级后将其设置为 100。
如果在升级前用户数据库的兼容级别为 100 或更高版本,则升级后仍保持不变。 如果在升级前兼容级别为 90,则升级数据库中的兼容性级别设置为 100,这是 SQL Server 2014 中支持的最低兼容级别。
注释
新用户数据库将继承 模型 数据库的兼容级别。
过程
还原完整数据库备份
执行 RESTORE DATABASE 语句以还原完整数据库备份,并指定:
要还原的数据库的名称。
用于还原完整数据库备份的备份设备。
在还原完整数据库备份后,如果需要应用事务日志或差异数据库备份,可以使用 NORECOVERY 子句。
重要
若要还原已加密的数据库,必须有权访问用于加密数据库的证书或非对称密钥。 如果没有证书或非对称密钥,则无法还原数据库。 因此,只要需要备份,就必须保留用于加密数据库加密密钥的证书。 有关详细信息,请参阅 SQL Server Certificates and Asymmetric Keys。
(可选)指定:
- 用于标识备份设备上的备份集以进行还原的 FILE 子句。
注释
如果将早期版本数据库还原到 SQL Server 2014,则会自动升级数据库。 通常,数据库会立即可用。 但是,如果 SQL Server 2005 数据库具有全文索引,则升级过程会导入、重置或重新生成它们,具体取决于 upgrade_option 服务器属性的设置。 如果将升级选项设置为“导入”(upgrade_option = 2) 或“重新生成”(upgrade_option = 0),在升级过程中将无法使用全文检索。 根据要编制索引的数据量,导入可能需要几个小时,重新生成可能需要长达 10 倍的时间。 另请注意,如果将升级选项设置为“导入”,并且全文目录不可用,则会重新生成关联的全文索引。 若要更改 upgrade_option 服务器属性的设置,请使用 sp_fulltext_service。
示例:
DESCRIPTION
此示例从磁带还原 AdventureWorks2012 完整数据库备份。
示例:
USE master;
GO
RESTORE DATABASE AdventureWorks2012
FROM TAPE = '\\.\Tape0';
GO
另请参阅
完整数据库还原(完整恢复模式)
完整数据库还原(简单恢复模式)
完整数据库备份 (SQL Server)
RESTORE (Transact-SQL)
备份历史记录和标头信息 (SQL Server)
重新生成系统数据库