从文件恢复 MS SQL 2008 数据库

从文件恢复 MS SQL 2008 数据库

是否可以通过复制目录/数据文件来恢复 MSSQL 服务器?我的硬盘损坏了,但可以挽救 C:\Program Files (x86)\SQL Server 2008\MSSQL\MSSQL10.MYDATABASE 目录。我将其复制到我的新安装中并尝试启动服务,但失败了。是否可以通过某种方式恢复数据库?

我正在使用 Windows 7 64 位和 MS SQL Server 2008 R2。

答案1

要从文件恢复数据库,您需要数据文件 - MDF,有时也存在 NDF,以及日志文件 - LDF。

  1. 启动 SQL Server Management Studio
  2. 右键单击数据库节点
  3. 选择
  4. 点击添加
  5. 选择您保存的MDF文件
  6. LDF 文件应自动添加。如果没有,将显示“未找到”消息,您必须通过单击省略号按钮手动添加文件

在此处输入图片描述

如果失败,请尝试仅附加 MDF 文件,使用附加单个文件功能

EXEC sp_attach_single_file_db @dbname = 'AdventureWorks2012Restored' ,
@physname = N'D:\ApexSQL\backups\CS2.mdf';

如果失败,MDF 文件可能已损坏。您可以尝试使用第三方工具读取 MDF 文件并恢复数据

ApexSQL恢复是一款可以读取损坏的 MDF 文件、重新创建所有对象并恢复表记录的工具。它可以创建 T-SQL 脚本或创建数据库的副本

免责声明:我是 ApexSQL 的支持工程师

答案2

  1. 您不应该复制整个目录。您应该只复制相关数据库的数据库和事务日志文件。

  2. 在目标主机上卸载并重新安装 SQL Server。

  3. 将相关数据库的数据库和事务日志文件复制到目标主机。

  4. 附加数据库。

答案3

正如@joeqwerty 所说,这只是对未来的一些建议。

最好将数据库文件 .MDF 与日志文件 .LDF 放在不同的驱动器上。还建议将所有数据库放在 C: 驱动器之外。TEMPDB 单独放在驱动器上时性能最佳。

这是一篇关于如何移动系统数据库的文章科技网

相关内容