sql2005恢复只有mdf文件的数据库 ,我把原来的数据库分离后 直接把日志文件给干掉了 原来在sql2000里经常这么干 ,只用一个mdf就附加了 没想到sql2005居然不行 我就日了 可把我给急坏了,里面的数据超重要啊 估计丢了 boss的脸该老难看了 没辙了 百度了一圈 一堆乱遭的答案 我试验了一圈 终于找到一个成功的方法 转载 供后来者参考

SQL2005 如何在没有日志文件的情况下如何恢复MDF数据库文件

 

第一步:先建立一个同名数据库,停止SQL SERVER2005,将没有日志的的.mdf数据库文件覆盖刚新建的.mdf数据库文件,重新启动数据库。
第三步:在查询分析器中运行如下代码:

alter database 数据库名   set emergency   '--将数据库设置为紧急状态

use master

declare @databasename varchar(255)

set @databasename='数据库名'         '--你的.mdf文件文件名

exec sp_dboption @databasename, N'single', N'true' --将目标数据库置为单用户状态

dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)

dbcc checkdb(@databasename,REPAIR_REBUILD)

exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态




执行出现“数据库其他多个文件与数据库主文件不匹配....”错误,再执行一次即可 。

posted on 2009-04-28 10:26  Anper  阅读(3742)  评论(0编辑  收藏  举报