2013年5月9日星期四

新整理:SQL 2005日志文件损坏后应当如何恢复

SQL 2005日志文件损坏后应当如何恢复
1、在MSSE停止数据库服务。
2、将需要恢复的数据库文件移动到另外的位置。
3、启动数据库服务。
4、确认要恢复的数据库文件已经成功复制到另外的位置,然后在SQL Server Management Studio中删除要恢复的数据库。
5、新建同名的数据库 ds_shop
6、停止数据库服务。
7、用第2步中备份的 ds_shop.mdf 文件覆盖新数据库的同名文件。 位置 C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\,删除 ds_shop_log.LDF
8、启动数据库服务。
9、打开数据库,在master数据库上右键新建查询
10、运行下面的命令就可以恢复数据库: 新log文件会在老数据文件位置自动生成 D:\中讯商业管理\DensenAlmacen\Data
 
*********************
假设数据库名称是 ds_shop
alter database ds_shop set emergency
use master
exec sp_dboption ds_shop, N'single', N'true'
dbcc checkdb('ds_shop',REPAIR_ALLOW_DATA_LOSS)
dbcc checkdb('ds_shop',REPAIR_REBUILD)
exec sp_dboption 'ds_shop', N'single', N'false'
exec sp_resetstatus 'ds_shop'
exec sp_dboption 'ds_shop','single user','false'
***************************
11.分离ds_shop数据库,停止数据库服务,剪切 C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\ds_shop.mdf 到 D:\中讯商业管理\DensenAlmacen\Data
12.使用单机版或者工具附加文件测试是否连接成功