加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SQLSERVER2008 数据库可疑的解决方法

发布时间:2020-12-12 12:56:44 所属栏目:MsSql教程 来源:网络整理
导读:1? 把问题数据库备份后直接删除 ? ?停掉 SQLSERVER 服务 , 把服务器上出问题的数据库 ,? 假设名称为? ErrorDB 的数据库文件及日志文件备份到其他目录 , 然后直接将其删除 , 把其数据库文件及日志文件也删除 2? 新建同名数据库 ??启动 SQLSERVER 服务 , 新建

1?把问题数据库备份后直接删除

? ?停掉SQLSERVER服务,把服务器上出问题的数据库,?假设名称为?ErrorDB的数据库文件及日志文件备份到其他目录,然后直接将其删除,把其数据库文件及日志文件也删除

2?新建同名数据库

??启动SQLSERVER服务,新建同名数据库ErrorDB,文件目录和日志和原来一致

3?用备份的数据库文件替换新的数据库文件

??停掉SQLSERVER服务,把备份的数据库文件替换新的数据库文件(只替换数据库文件,不替换日志文件)

??启动SQLSERVER服务,打开数据库,这时数据库应该是不能访问的

-------------------设置应急模式、单用户模式、检查修复数据,取消单用户模式----------------------

4?将数据库设置为应急状态

??alter?database?ErrorDB?set?emergency

??执行后,为了保险起见,重新停止、开启的SQLSERVER服务

??再打开数据库,已经可以看到里面的内容了,如表,视图,存储过程等

??数据库名称后有紧急标志,能看到数据库结构,但无法进行备份等操作

5?将数据库设置为单用户模式

??ALTER?DATABASE?ErrorDB?SET?SINGLE_USER

6?对数据库进行检查修复

??dbcc?checkdb(EIMSDb,REPAIR_ALLOW_DATA_LOSS)

??dbcc?checkdb(EIMSDb,REPAIR_REBUILD)

??操作后,仍然停止启动SQLSERVER服务(不确定是否需要,我只是为了想无干扰查看执行后的数据库状况)
?
??重新打开数据库,已经是正常状态了,没有应急提示了

7?取消单用户模式

??exec?sp_dboption?EIMSDb,?N'single',?N'false'

?

至此,数据库恢复完毕,对数据库进行BAK

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读