SqlServer2005数据库文件损坏的拯救过程

  客服人员找我,说用户的数据库不小心搞坏了(具体怎么坏的暂不追究),我到现场观看现象,发现以前在SqlServer2000 时很多人都遇见过,于是寻找了几篇解决办法的文章,一步一步操作:

1.       新建一个test数据库

2.       停止SqlServer服务

3.       用损坏的数据库文件和日志文件覆盖该数据库的数据库文件和日志文件

4.       启动SqlServer服务,发现和以前一样处于“可疑”状态

5.       于是想如果将其设置为“紧急”状态可以对数据库只读访问就应该差不多了。再

SqlServer2000

update sysdatabases set status=-32768 where dbid=DB_ID('test')

SqlServer2005

用上面的语句会提示“不允许修改系统目录”

alter database test set emergency

6.       DBCC CHECKDB检查数据库的完整性

7.       将数据库配置为正常状态

参阅资料:

参考Code
use master

go

sp_configure 
'allow updates',1

go 

reconfigure with override

go

select * from sysdatabases --1090519040

alter database test set emergency;

select * from a01

use test

go

ALTER DATABASE test SET SINGLE_USER

DBCC CHECKDB (test, repair_allow_data_loss) with NO_INFOMSGS

go

ALTER DATABASE test2 SET MULTI_USER

go

dbcc rebuild_log('test','e:"test_log.ldf')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值