首页 > 代码库 > 【SQLServer】【恢复挂起的解决方案】附加文件时候的提示“无法重新生成日志,原因是数据库关闭时存在打开的事务/用户,该数据库没有检查点或者该数据库是只读的。 ”【数据库恢复】
【SQLServer】【恢复挂起的解决方案】附加文件时候的提示“无法重新生成日志,原因是数据库关闭时存在打开的事务/用户,该数据库没有检查点或者该数据库是只读的。 ”【数据库恢复】
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql
先贴错误:
吐槽一下:
进入正题:
新建一个同名数据库
停止MSSQL服务
替换数据库文件
重新启用MSSQL服务
看效果图:
设置数据库为应急模式
alter database BigData_TestInfo set emergency
快速修复一下(如果出现问题请试试, [Repair_Rebuild-重建索引并修复] 和 [Repair_Allow_Data_Loss-允许丢失数据的修复方式])
--dbcc checkdb用法(手工修复数据库)--检查数据库完整性--dbcc checkdb(‘数据库名‘)--go--快速修复 --dbcc checkdb (‘数据库名‘, Repair_Fast)--go--重建索引并修复 --dbcc checkdb (‘数据库名‘, REPAIR_REBUILD)--go--如果必要允许丢失数据修复 --dbcc checkdb (‘数据库名‘, Repair_Allow_Data_Loss) --go修复成功后恢复为多用户模式(如果出错就把其他查询窗口关掉)
alter database BigData_TestInfo set multi_user
你刷新数据库就发现,好了~吓死了,赶紧查查数据有没有用问题(以前)
大小也木有变
扩展一下:
有人附加的时候发现。。。拒绝xxx的提示
呃。。其实就是没开权限:
把当前用户的权限开一下就ok了
如果是多用户你又怕麻烦,设置everyone的权限即可
这次该收工了~
快速修复并把用户设置回多用户模式
【SQLServer】【恢复挂起的解决方案】附加文件时候的提示“无法重新生成日志,原因是数据库关闭时存在打开的事务/用户,该数据库没有检查点或者该数据库是只读的。 ”【数据库恢复】
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。