如何还原 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';