sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

时间:2024-03-29 13:31:43

https://www.cnblogs.com/dunitian/p/6197051.html

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

先贴错误:

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

 

吐槽一下:

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

进入正题:

新建一个同名数据库

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

停止MSSQL服务

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

替换数据库文件

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

重新启用MSSQL服务

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

看效果图:

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

设置数据库为应急模式

alter database BigData_TestInfo set emergency

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

快速修复一下(如果出现问题请试试, [Repair_Rebuild-重建索引并修复] 和 [Repair_Allow_Data_Loss-允许丢失数据的修复方式])

1

2

3

4

5

6

7

8

9

10

11

12

13

--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

你刷新数据库就发现,好了~

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

吓死了,赶紧查查数据有没有用问题(以前

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

大小也木有变

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

 

扩展一下:

有人附加的时候发现。。。拒绝xxx的提示

呃。。其实就是没开权限:

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

把当前用户的权限开一下就ok了

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

如果是多用户你又怕麻烦,设置everyone的权限即可

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配

sqlserver 恢复挂起-日志文件(.ldf)与数据文件(.mdf)不匹配