SQL Server ldf 丢失的数据库恢复

数据库的ldf文件丢失或损坏,则数据库加载失败, 查看SQL Server Management->SQL Server Logs, 可以看到加载ldf失败。

 

1.查看数据库状态

select * from sys.databases

 可以看到对应的数据库的state_desc为Recovery

 在后面的步骤中可以随时查看数据库状态

 

2. 允许数据库更新

Sp_configure 'allow updates',1

go

Reconfigure with override

GO 

好像这步不做,也可以通过。

 

3.将数据库脱机

 alter database Test set offline

go

 4.将数据库设为紧急状况

 alter database Test set emergency

go

 

5.设置单用户模式

 alter database Test set single_User

go

6. 使用DBCC恢复log

DBCC checkdb('Test', REPAIR_ALLOW_DATA_LOSS) with NO_INFOMSGS


dbcc checkdb('Test', REPAIR_REBUILD) 

7.到这步应该是可以了,下面就是将数据库回复到正常状态

 exec sp_resetstatus 'Test'

exec sp_dboption 'Test',N'single','false'

alter database Test set online

go

 

8. 同样的关闭update

Sp_configure 'allow updates', 0

go

Reconfigure with override

GO

 

 至此数据库应该恢复完毕.

 

 

 

 

 

 

你可能感兴趣的:(SQL Server)