数据库置疑的处理方法

前段时间按一个网友问我数据库置疑的处理方法.

通常来说,数据库置疑有两种情形,一种是数据库文件破坏,这时,很不好意思,重建数据库,拿备份文件还原,如果没备份文件就等死吧.另一种,数据库主文件连接不上DBMS,这时算你幸运,先断掉这个数据库的所有连接,也就是改成单用户模式,然后分离一下,在附加一下数据库MDF文件.可能一次不行,那就多操作几次.

也可以用脚本操作,下面的脚本是我在网上找的,好多网站都有,没办法指明原始出处,不好意思:

一、首先将置疑的数据库设为单用户

 语句如下:

USE MASTER
GO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='ABCD'
Go
sp_dboption 'ABCD', 'single user', 'true'
Go
DBCC CHECKDB('ABCD')
Go
update sysdatabases set status =28 where name='ABCD'
Go
sp_configure 'allow updates', 0 reconfigure with override
Go
sp_dboption 'ABCD', 'single user', 'false'
Go

二、将单用户改为多用户 

语句如下:

 USE MASTER
GO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='置疑的数据库名'
Go
sp_dboption '置疑的数据库名', 'single user', 'true'
Go
DBCC CHECKDB('置疑的数据库名')
Go
update sysdatabases set status =28 where name='置疑的数据库名'
Go
sp_configure 'allow updates', 0 reconfigure with override
Go
sp_dboption '置疑的数据库名', 'single user', 'true'
Go

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值