如何还原 SQL Server 数据库

Microsoft SQL Server (MSSQL) 是在 Windows 服务器上使用的关系数据库管理系统。 最新版本也可用于 Linux 平台。 定期备份数据库是一种很好的做法,尤其是在生产环境中。 因此,如果出现任何故障,我们可以从备份文件中恢复数据库。 SQL 服务器提供备份和恢复完整数据库或事务日志的选项。

在本操作指南中,我们将学习使用 T-SQL 语句和 SQL Server Management Studio 还原 SQL Server 数据库。

如何还原 SQL Server 数据库

我们可以使用 SQL 查询或 SQL Server Management Studio (SSMS) 从备份文件恢复 SQL Server 数据库。 使用以下选项之一从备份文件还原 SQL Server 数据库。

1.用T-SQL恢复SQL数据库

使用 恢复数据库 查询以从备份文件恢复 SQL 服务器数据库。

例如,您有一个使用 BACKUP 命令创建的数据库备份文件位于 C:备份Test_db.bak . 然后执行以下 T-SQL 语句从文件中恢复备份的 Test_db 数据库。

RESTORE DATABASE [Test_db]
FROM DISK = 'D:backupsTest_db.bak';

在大多数情况下,上述命令无法恢复数据库,您需要进行下一个查询。

2. 恢复 SQL 数据库(WITH REPLACE)

包括 替换 覆盖任何现有数据的选项。 WITH REPLACE 告诉 SQL Server 丢弃事务日志中的任何活动内容并完成还原。

RESTORE DATABASE [Test_db]
FROM DISK = 'D:backupsTest_db.bak'
WITH REPLACE;

3. 还原 SQL 数据库 (WITH MOVE)

可能是目标服务器数据库将文件放置在与原始备份服务器不同的位置。 在这种情况下,您需要定义 MDF 和 LDF 文件位置。

首先标识数据库的两个文件的逻辑名称。 要查找逻辑名称,请右键单击数据库,单击 特性 并选择 文件 标签。 在这里您可以找到逻辑名称。

将以下查询与正确的逻辑名称、文件位置和备份文件一起使用。

RESTORE DATABASE [Test_db]
FROM DISK = 'D:backupsTest_db.bak'
WITH REPLACE,
MOVE 'Test_db' TO 'D:MSSQLDataTest_db.mdf',
MOVE 'Test_db_log' TO 'D:MSSQLLogTest_db_log.ldf';

4. 使用 SSMS 还原 SQL Server 数据库

SQL Server Management Studio (SSMS) 是一个很棒的图形工具,用于管理 SQL Server 上的数据库。

  1. 右键单击数据库>>任务>>还原>>数据库
  2. 选择设备并单击它前面的三个点 (…)
  3. 选择备份文件并点击确定
  4. 转到文件选项卡
  5. 如果文件位置与源不同。 选中复选框“将所有文件重定位到文件夹”
  6. 选择 MDF 和 LDF 文件目录,这也会更新文件路径
  7. 现在,转到选项选项卡
  8. 选择复选框 覆盖现有数据库(WITH REPLACE)
  9. 取消选中该框 恢复前进行尾日志备份
  10. 单击“确定”完成 SQL Server 中的数据库还原

以下是使用 SQL Server Management Studio (SSMS) 在 SQL Server 中恢复数据库的有用屏幕截图。

在“常规”选项卡下,选择要还原的数据库备份文件。

在 SQL Server 中还原数据库

在文件选项卡下,如果需要,选中重定位复选框并输入 MDF 和 LDF 文件夹。

在 SQL Server 中还原数据库

在选项选项卡中,选择 WITH 替换选项。 另外,取消选中尾部日志复选框。

使用 SSMS 在 SQL Server 中还原数据库

最后,完成了数据库恢复。

使用 SSMS 在 SQL Server 中还原数据库

结论

在本教程中,您学习了从 SQL Server 中的备份文件恢复数据库。