一.这个库就是由1个mdf和1个ldf文件构成,ldf文件损坏; 二.我的解题思路按照网上通用通用的思路: 1、新建一个同名数据库。 2、停止数据库服务,覆盖新建的数据库主文件(小技巧:最好放在同一个磁盘里面,把新建的数据库主文件删掉或移开,再把要恢复的数据库主文件剪切过去,这样就可以节省时间。) 3、启动数据库服务,数据库变为置疑或可疑状态。然后在查询分析器中运行: alter database 无日志文件的数据库名称 set emergency 设置为紧急状态。 4、再运行: alter database 无日志文件的数据库名称 set single_user 或者: Sp_dboption '无日志文件的数据库名称', 'single user', 'true' 设置为单用户模式。 、检查并重建日志文件,运行: dbcc checkdb('无日志文件的数据库名称',REPAIR_ALLOW_DATA_LOSS) 这个时间比较长。耐心等待!如果有错误提示,再运行: dbcc checkdb('无日志文件的数据库名称',REPAIR_REBUILD) 进行修复。如果没有错误,可以跳过。 6、恢复成多用户模式 alter database 无日志文件的数据库名称 set multi_user 或者: Sp_dboption '无日志文件的数据库名称', 'single user', 'false' 但在执行第五步时就没法继续下去了,报“无法打开数据库 'newexam' 版本 655。请将该数据库升级为最新版本。”。这个方法应该是对SQL2000凑效,不知道为什么在SQL2008下就不行了,请高手们指教下,谢谢!ps:请不要随性copy网上的,要确认有效再说,因为我也是在网上找了很多没结果才在论坛上求助的,谢谢!
标签:文件,SQL2008,数据库,mdf,user,日志,alter,名称 From: https://www.cnblogs.com/Thenext/p/16769152.html