SQLserver 2005数据库日志文件记录了所有对数据库的操作更新信息及数据,是十分重要的文件,每个数据库都有一个对应的日志文件,如果因特殊情况导致了数据库日志文件的损坏,数据库的数据文件是无法进行附加和启动的。本文针对SQLserver 2005数据库日志文件损坏或丢失情况下如何恢复数据库进行说明。希望能对大家有所帮助。
恢复步骤:
1、停止数据库服务。
2、将需要恢复的数据库文件复制到另外的位置。
3、启动数据库服务。
4、确认要恢复的数据库文件已经成功复制到另外的位置,然后在SQL Server Management Studio中删除要恢复的数据库。
以上4步操作是针对日志文件损坏数据库无法正常online情况的操作,如果是附加新库文件,则省略以上步骤。
5、新建同名的数据库(数据库文件名也要相同)。
6、停止数据库服务。
7、用第2步中备份的.mdf文件覆盖新数据库的同名文件。(附加新库,则直接用要附加的库文件覆盖即可)
8、启动数据库服务。
9、运行 alter database dbname set emergency ,将数据库设置为emergency mode
10、在新查询窗口使用以下命令即可恢复数据库:
use master
declare @databasename varchar(255)
set @databasename='要恢复的数据库名称'
exec sp_dboption @databasename, N'single', N'true' --将目标数据库置为单用户状态
dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb(@databasename,REPAIR_REBUILD)
exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态
注:'要恢复的数据库名称' 替换为你要恢复的数据库名。