RECOVERY 和 NORECOVERY 选项之间的差异

实际上,Recovery 和 Norecovery 是数据库还原过程中的两个命令选项。这两个选项都需要 SQL 数据库备份。

如果只有一份备份并且想要直接恢复,则可以使用“恢复”选项。默认情况下,此恢复过程包括撤销和重做两部分,而不允许进行额外的备份恢复。也就是说,RECOVERY 选项将数据库置于可操作状态。

NORECOVERY 会将进程向前滚动,以便执行下一个操作。如果你有不同类型的备份(差异、事务等),NORECOVERY 选项应该是正确选择。

如何使用恢复和Norecovery选项还原MS SQL数据库

“Recovery”和“Norecovery”选项是两种手动SQL恢复方法。它们适用于轻微的SQL损坏问题。在开始这些命令之前,您必须记住数据库备份是必要的。在开始命令之前,您必须有一个备份。

备份MS SQL

步骤 1: 打开 SQL Server Management Studio,右键单击数据库,然后选择“任务 > 备份”。

步骤 2: 然后,您可以根据需要备份数据库。在备份时,您可以指定要将数据库备份存储在哪里。

既然我们知道了差异和创建备份的方法,让我们详细讨论如何还原MS SQL数据库。

使用恢复选项还原

您可以在SQL Server Management Studio中通过右键单击“数据库”并选择“还原数据库”选项来恢复。

您也可以使用 T-SQL。如果您想自动化任务,这将很有用。

**重要提示:**请确保在实际使用此代码前,将其调整为符合您数据库环境的正确路径和设置。 ```html RESTORE DATABASE F FROM DISK = 'c:\sql\F.bak' WITH FILE = 1, NOUNLOAD, STATS = 5, RECOVERY GO ``` 这段HTML代码包含了一段SQL命令,用于恢复名为"F"的数据库。翻译成中文如下: **恢复数据库F,从磁盘位置 'c:\sql\F.bak' 进行恢复,使用文件号1,不卸载,每5%显示统计信息,** **并执行恢复操作。** **执行(GO)** 请注意,这里的``和``是HTML标签,分别表示加粗(``)和斜体(``), 在实际的SQL脚本中这些标签不会出现,仅用于在网页或文档中强调文本。

将"F"替换为您的数据库名称。不必使用"RECOVERY",因为它是一个默认选项。

恢复但不恢复

如果有多个备份还原,NORECOVERY 选项非常有用。因为 Norecovery 命令使数据库处于“还原状态”,所以可以执行其他备份。

您可以使用 SQL Server Management Studio 执行 Norecovery 命令来还原:

点击“选项”。选择“无恢复还原”,然后点击“确定”。

同时,你可以使用这个命令:

**RESTORE DATABASE F FROM DISK = N'c:\sql\F.bak'** **WITH NORECOVERY** **GO** 这是一段SQL语句,用于从指定的磁盘位置恢复数据库F。`RESTORE DATABASE`命令用于恢复数据库,`FROM DISK`指定了备份文件的位置(在这个例子中是`c:\sql\F.bak`)。`WITH NORECOVERY`意味着在恢复后,数据库不会自动进入可使用状态,可能需要进一步的恢复步骤。`GO`是T-SQL中的一个关键字,表示该语句块的结束。

**RESTORE LOG F 从磁盘 = 'C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Backup\F_LogBackup_2019-8-4_12-24-25.bak'** **WITH RECOVERY** **Go** 这是一段SQL语句,用于恢复SQL Server数据库的日志文件。"RESTORE LOG"命令用于恢复日志备份,"FROM DISK"指定了备份文件的位置,'C:\Program Files\Microsoft SQL Server\MSSQL14.MSSQLSERVER\MSSQL\Backup\F_LogBackup_2019-8-4_12-24-25.bak'是具体的备份文件路径。"WITH RECOVERY"表示在恢复后,数据库将变为可用状态,所有的恢复操作将立即完成。"Go"是SQL Server Management Studio中用于执行语句的指示符。

这里,将使用NORECOVERY命令以备日后进行更多备份。此命令将还原数据库,但该数据库将处于恢复状态。

MS SQL 数据库恢复工具(更简单)

如果您的 SQL Server 数据库损坏,您可以选择其他方法来恢复数据,而不仅仅是使用备份。如果您没有备份数据库,仍然可以无备份的情况下 恢复丢失的数据

SQL Recovery软件工具 可以帮助您修复损坏的数据库并解决所有类型的SQL数据库修复问题。此外,它还可以从SQL数据库中恢复数据库组件(如表、触发器、索引、键、规则和存储过程)以及删除的记录。它支持MS SQL Server 2017、2016、2014、2012、2008及更早版本。

步骤 1. 下载并运行SQL恢复工具。

步骤 2. 点击两个点(浏览按钮),选择目标 MDF 文件,或点击“搜索”,然后从下面找到的列表中选择要修复的文件。之后,点击“修复”开始修复过程。

第三步:扫描完成后,会出现一个窗口,确认分析成功。所有已删除的表格和记录恢复的项目将以原始表格名称列在左侧窗格中。

4. 点击屏幕右下角的“导出”按钮。根据需要,您可以将恢复的数据库保存到数据库和SQL脚本中。然后,您需要输入服务器/实例名称并连接到服务器。如果您选择“导出到数据库”,则可以创建新数据库或导出到现有数据库。