1、非正常删除log数据文件恢复过程由于空间不足数据库备份无法执行,分离数据库,删除数据库事物日志,无法附加数据库,提示设备激活错误。使用returndate.mdf数据库文件恢复数据库: 建立一个数据库returndate,停止数据库服务。 将创建数据库后生成的数据库的日志文件returndate_log.ldf删除,用要恢复的数据库mdf文件覆盖刚才生成的数据库数据文件returndate_data.mdf。启动数据库服务。此时会看到数据库returndate的状态为“置疑”。这时候不能对此数据库进行任何操作。
2、设置数据库允许直接操作系统表。use mastergosp_configure 'allow updates',1goreconfigure with overridegoØ 设置returndate为紧急修复模式
3、update sysdatabases set status=-32768 wheredbid=DB_ID('returndate')Ø 下面执行真正的恢复操作,重建数据库日志文件Dbcc rebuild_log('returndate','D:\ProgramFiles\MicrosoftSQL Server\MSSQL\Data\returndate_log.ldf')提示警告: 数据库 'test' 的日志已重建。已失去事务的一致性。应运行 DBCC CHECKDB 以验证物理一致性。将必须重置数据库选项,并且可能需要删除多余的日志文件。Ø 验证数据库一致性
4、Ø 设置数据库为正常状态sp_dboption 'returndate','dbo useonly','false'没有出错。Ø 数据库允许直接操作系统表设置恢复,use mastergosp_configure 'allow updates',0goreconfigure with overridego