![从文件恢复 MS SQL 2008 数据库](https://linux22.com/image/623458/%E4%BB%8E%E6%96%87%E4%BB%B6%E6%81%A2%E5%A4%8D%20MS%20SQL%202008%20%E6%95%B0%E6%8D%AE%E5%BA%93.png)
是否可以通过复制目录/数据文件来恢复 MSSQL 服务器?我的硬盘损坏了,但可以挽救 C:\Program Files (x86)\SQL Server 2008\MSSQL\MSSQL10.MYDATABASE 目录。我将其复制到我的新安装中并尝试启动服务,但失败了。是否可以通过某种方式恢复数据库?
我正在使用 Windows 7 64 位和 MS SQL Server 2008 R2。
答案1
要从文件恢复数据库,您需要数据文件 - MDF,有时也存在 NDF,以及日志文件 - LDF。
- 启动 SQL Server Management Studio
- 右键单击数据库节点
- 选择附
- 点击添加
- 选择您保存的MDF文件
- 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
您不应该复制整个目录。您应该只复制相关数据库的数据库和事务日志文件。
在目标主机上卸载并重新安装 SQL Server。
将相关数据库的数据库和事务日志文件复制到目标主机。
附加数据库。
答案3
正如@joeqwerty 所说,这只是对未来的一些建议。
最好将数据库文件 .MDF 与日志文件 .LDF 放在不同的驱动器上。还建议将所有数据库放在 C: 驱动器之外。TEMPDB 单独放在驱动器上时性能最佳。
这是一篇关于如何移动系统数据库的文章科技网