日志文件丢失下的数据库恢复    
打开系统表的操作权限
USE master
EXEC sp_configure 'allow updates', '1'
RECONFIGURE WITH OVERRIDE

纪录数据库原状态

select status from sysdatabases where name = 'crashdb'

status     

-----------

16

(所影响的行数为 1 行)

将数据库置为紧急状态

update sysdatabases set status = 32768 where name = 'crashdb'

运行如下DBCC命令
USE master
DBCC REBUILD_LOG (crashdb,'F:\crashdb_log.LDF' )

系统返回信息
Warning: The log for database 'crashdb' has been rebuilt. Transactional consistency has been lost. DBCC CHECKDB should be run to validate physical consistency. Database options will have to be reset, and extra log files may need to be deleted.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

Crashdb数据库状态变为
2048 = dbo use only;

此时运行
DBCC CHECKDB(‘crashdb’)

检查数据库是否一致
 
将crashdb数据库置为原状态
update sysdatabases set status = 16 where name = 'crashdb'

数据库便可正常操作
 

关联文档