经过网上资料搜索,此方法可以解决。
LDF日志不要轻易删除,恢复主数据要用到,如果删除,记得先分离,然后移动到另外的地方。
下面是针对未分离删除日志文件,MDF文件附加,提示找不到日志的问题的解决方法:
1,新建数据库,同名需要附加的数据库名(假设名为grab)。
2,在sqlserver配置管理器中停止sql服务,然后打开新建数据库grab的位置,将需要附加的MDF、NDF(如果有)文件复制,粘贴到此位置,覆盖新建的数据库文件。
3,重新在sqlserver配置管理器中启动sql服务,然后在客户端连接会看到覆盖完的数据库grab不能打开,点击属性提示错误。
4,在数据库master下新建查询(按字母顺序执行):
a:alter databasegrab set emergency /*设置紧急状态,此步骤执行完,grab的属性可以打开了。*/
b:alter databasegrab set single_user或Sp_dboption 'grab ', 'single user', 'true' /*设置单用户运行状态*/
c:dbcc checkdb('grab ',REPAIR_ALLOW_DATA_LOSS) /*检查并重建,此步骤略长,注意数据库名带引号。*/
/*如果此步骤,运行完毕有错误提示,日志文件无法创建,则运行下面命令;如果没有错误,略过...*/
dbcc checkdb('grab ',REPAIR_REBUILD)
d:alter databasegrab set multi_user 或Sp_dboption 'grab ', 'single user', 'false' /*恢复多用户状态运行*/
e:刷新grab数据库,可以看到表数据了。
新闻热点
疑难解答