服务器失败,我可以从我的硬盘检索我的数据库?

我有一台运行Windows Server 2003 R2的旧服务器。 Windows由于不正确的关机而损坏。 我试图修复Windows安装,但它使事情变得更糟(它到达桌面,但没有开始菜单,大部分开始菜单项都丢失了)。 我无法运行任何程序,Windows声称应用程序必须重新安装。

无论如何,这台服务器是旧的,我们有一个较新的服务器,已承担了超过90%的这个服务器的职责,除了托pipe一个数据库。 数据库的备份被用来在新的服务器上启动,但是大约一天的时间。 不幸的是,所有库存数据都是在最后一次备份和服务器出现故障之间input的,而且这是很多重新input的信息。

有没有办法直接从硬盘上检索数据库信息(通过插入到另一台计算机读取)? 数据库是由MS SQL Server 2008pipe理的。我在机器上使用了第三方SQL备份工具和MS SQL Server Management,它不会加载应用程序(抱怨缺less核心的Windows和.Net文件)。 重新运行Windows安装程序已经无用,导致相同的桌面。

我会尝试将该硬盘上的数据库文件复制到另一台运行MS SQL 2008的计算机上,并查看该文件是否可访问。 这听起来像一些Windows文件已损坏,但这并不意味着你的数据库文件是。 这些信息可能有帮助:

https://stackoverflow.com/questions/6584938/move-sql-server-2008-database-files-to-a-new-folder-location

如果您可以将旧数据库的.MDF和.LDF文件完好无损地保存在旧硬盘上,则应该可以将它们作为新数据库附加到新服务器上。 这里引用:

http://msdn.microsoft.com/en-us/library/ms187858.aspx

假设您的数据库被命名为“MyDatabase”,并且这些文件是“MyDatabase_Data.mdf”和“MyDatabase_Log.ldf”

将它们复制到新服务器上的文件夹中,说“c:\ MySQLServer”,然后将它们作为新数据库附加:

USE master; GO CREATE DATABASE MyDatabase ON (FILENAME = 'C:\MySQLServer\MyDatabase_Data.mdf'), (FILENAME = 'C:\MySQLServer\MyDatabase_Log.ldf') FOR ATTACH; GO