还原数据库备份 (SQL Server Management Studio)

本主题介绍如何还原完整数据库备份。

重要

在完整或大容量日志恢复模式下,在 SQL Server Management Studio 中还原数据库之前,必须备份活动事务日志(称为日志尾部)。 有关详细信息,请参阅备份事务日志(SQL Server)。 若要还原已加密的数据库,必须有权访问用于加密数据库的证书或非对称密钥。 如果没有证书或非对称密钥,则无法还原数据库。 因此,只要需要备份,就必须保留用于加密数据库加密密钥的证书。 有关详细信息,请参阅 SQL Server Certificates and Asymmetric Keys

请注意,如果将 SQL Server 2005 或更高版本的数据库还原到 SQL Server 2014,则会自动升级数据库。 通常,数据库会立即可用。 但是,如果 SQL Server 2005 数据库具有全文索引,升级过程会导入、重置或重新生成它们,具体取决于 Full-Text Upgrade Option 服务器属性的设置。 如果将升级选项设置为“导入”或“重新生成”,在升级过程中将无法使用全文检索。 根据要编制索引的数据量,导入可能需要几个小时,重新生成可能需要长达 10 倍的时间。 另请注意,当升级选项设置为“导入”时,如果全文目录不可用,将重新生成关联的全文检索。 有关查看或更改“全文升级选项”属性设置的信息,请参阅管理和监视服务器实例的全文搜索

还原完整数据库备份

  1. 连接到Microsoft SQL Server 数据库引擎的相应实例后,在对象资源管理器中,单击服务器名称以展开服务器树。

  2. 展开 数据库。 根据数据库,选择用户数据库或展开 系统数据库,然后选择系统数据库。

  3. 右键单击数据库,指向 “任务”,指向“ 还原”,然后单击“ 数据库”,这将打开“ 还原数据库 ”对话框。

  4. 在“ 常规 ”页上,使用 “源 ”部分指定要还原的备份集的源和位置。 选择以下任一选项:

    • 数据库

      从下拉列表中选择要还原的数据库。 该列表仅包含已根据 msdb 备份历史记录备份的数据库。

    注释

    如果备份是从其他服务器获取的,则目标服务器将不具有指定数据库的备份历史记录信息。 在这种情况下,请选择 “设备 ”以手动指定要还原的文件或设备。

    • 设备

      单击“浏览”按钮打开 “选择备份设备 ”对话框。 在 “备份媒体类型 ”框中,选择列出的设备类型之一。 若要为 备份媒体 框选择一个或多个设备,请单击“ 添加”。

      将想要的设备添加到 “备份媒体 ”列表框后,单击“ 确定 ”返回到 “常规 ”页。

      “源:设备:数据库 ”列表框中,选择应还原的数据库的名称。

      注释

      仅当选择 “设备” 时,此列表才可用。 只有所选设备上具有备份的数据库才可用。

      备份介质
      选择还原作的介质: 文件磁带URL备份设备。 仅当计算机上装载磁带驱动器时,才会显示 磁带选项, 并且仅当至少有一个备份设备存在时,才会显示 “备份设备 ”选项。

      备份位置
      查看、添加或删除还原操作的媒体。 该列表最多可以包含 64 个文件、磁带或备份设备。

      添加
      将备份设备的位置添加到 备份位置 列表。 根据在 “备份媒体 ”字段中选择的媒体类型,单击“ 添加 ”将打开以下对话框之一。

      媒体类型 對話方塊 DESCRIPTION
      文件 找到备份文件 在此对话框中,可以从树中选择本地文件,或使用其完全限定的通用命名约定(UNC)名称指定远程文件。 有关详细信息,请参阅备份设备(SQL Server)。
      设备 选择“备份设备” 在此对话框中,可以从服务器实例上定义的逻辑备份设备列表中选择。
      磁带 选择备份磁带 在此对话框中,可以从物理连接到运行 SQL Server 实例的计算机的磁带驱动器列表中进行选择。
      URL 这会按以下顺序启动两个对话框:

      1) 连接到 Azure 存储

      2) 在 Azure 中查找备份文件
      在“ 连接到 Azure 存储 ”对话框中,选择存储 Azure 存储帐户名称和访问密钥信息的现有 SQL 凭据,或者通过指定存储帐户名称和存储访问密钥信息创建新的 SQL 凭据。 有关详细信息,请参阅“连接到 Azure 存储”(还原)。

      在“ 查找备份文件 ”对话框中,可以从左侧框架中显示的容器列表中选择一个文件。

      如果列表已满,则 “添加 ”按钮不可用。

      删除
      删除一个或多个选定的文件、磁带或逻辑备份设备。

      内容
      显示所选文件、磁带或逻辑备份设备的媒体内容。

  5. “目标 ”部分中, “数据库 ”框会自动填充要还原的数据库的名称。 若要更改数据库的名称,请在 “数据库 ”框中输入新名称。

  6. 在“ 还原到 ”框中,将默认值保留为“上次 备份 ”,或单击“ 时间线 ”以访问“ 备份时间线 ”对话框,以手动选择一个时间点以停止恢复作。 有关指定特定时间点的详细信息,请参阅 备份时间线

  7. 要还原的备份集网格 中,选择要还原的备份。 此网格显示可用于指定位置的备份。 默认情况下,建议使用恢复计划。 若要替代建议的恢复计划,可以更改网格中的选择。 当取消选择早期备份时,将自动取消选择依赖于早期备份还原的备份。 有关备份集中要还原网格中的列的信息,请参阅“还原数据库 (常规页)”

  8. (可选)单击“选择页面”窗格中的“文件”以访问“文件”对话框。 在此处,您可以通过指定 数据库文件还原为 网格中每个文件的新的还原目标,将数据库还原到新的位置。 有关此网格的详细信息,请参阅“还原数据库”(文件页)。

  9. 若要查看或选择高级选项,请在“ 选项 ”页上的 “还原选项 ”面板中选择以下任一选项(如果适合你的情况):

    1. WITH 选项(不需要):

      • 覆盖现有数据库(使用 REPLACE 替代)

      • 保留复制设置(WITH KEEP_REPLICATION)

      • 限制对已还原数据库的访问(WITH RESTRICTED_USER)

    2. “恢复”状态 框选择一个选项。 此框确定还原作后数据库的状态。

      • RESTORE WITH RECOVERY 是默认行为,通过回滚未提交的事务,使数据库可供使用。 无法还原其他事务日志。 如果要立即还原所有必要的备份,请选择此选项。

      • RESTORE WITH NORECOVERY ,它使数据库无法运行,并且不会回滚未提交的事务。 可以还原其他事务日志。 在恢复数据库之前,不能使用该数据库。

      • RESTORE WITH STANDBY ,使数据库处于只读模式。 它撤消未提交的事务,但将撤销操作保存在备用文件中,以便可以恢复已撤销的恢复操作。

    3. 还原之前进行结尾日志备份,如果这是所选时间点所必需的,将会自动选择此选项。 无需修改此设置,但即使不需要,也可以选择备份日志尾部。 此处的文件名? 如果 “常规 ”页中的第一个备份集位于 Azure 中,则尾日志也将备份到同一存储容器。

    4. 如果与数据库建立活动连接,还原作可能会失败。 选中 “关闭现有连接”选项 ,确保 Management Studio 和数据库之间的所有活动连接都已关闭。 此复选框在执行还原作之前将数据库设置为单用户模式,并在完成后将数据库设置为多用户模式。

    5. 如果希望在每次还原操作之前收到提示,请选择在还原每个备份之前提示。 这通常是没有必要的,除非数据库规模很大,并且你希望监控还原操作的状态。

    有关这些还原选项的详细信息,请参阅“还原数据库”(选项页)。

  10. 单击 “确定”

另请参阅

备份事务日志 (SQL Server)
创建完整数据库备份 (SQL Server)
将数据库还原到新位置 (SQL Server)
还原事务日志备份 (SQL Server)
RESTORE (Transact-SQL)
还原数据库(“选项”页)
还原数据库(“常规”页)