加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

关于数据库出现(可疑、质疑)字样的处理方法

(2015-04-07 13:06:09)
标签:

it

       今早编辑反馈说数据库连接不上,登陆数据库后,发现数据库的名字被标记为(可疑)  所有的【任务】操作都为灰色不可用状态。经过重启、脱机、分离、附加、等多种方法操作均无效! 最后咨询了总监,总监让切换成紧急模式修复。 不是太理解,所以上官网搜了下,在官网找到解决方法。逐记录了一下操作步骤。
       我使用的数据库是mssql-2005  所以以下的命令是针对这个版本的。2000、2008或者2012  请根据实际情况修改命令,具体命令请自行度娘吧。。。因为我也不知道!http://www/uc/myshow/blog/misc/gif/E___7457ZH00SIGG.gif

操作之前请确认数据库有备份! 以下命令误操作导致数据损坏丢失的!
本人概不负责,因本人是在测试环境下操作的,未出现数据丢失问题!
http://www/uc/myshow/blog/misc/gif/E___6692EN00SIGG.gif
-------------------------------------
停掉Sql server.然后【分离】掉你要修复的数据库, 把mdf和ldf文件拷到别处.
重启Sql server。
然后在测试机下建一个完全相同名字的数据库(包括同名的mdf和ldf文件名!路径也要一模一样)
停掉测试机下的Sql server 将之前拷贝走的旧文件复制一份到新数据库文件目录下并覆盖新创建的mdf、ldf
重起测试机Sql server 那个数据库,这样它就又处于【可疑】状态.    
实际上行如果你要直接操作的话上面的步骤可疑完全忽略!!!
然后在查询分析器中运行:

use master
go
sp_configure 'allow updates', 1
reconfigure with override
go

alter database 'db_name' set emergency                                    --//切换紧急模式
alter database 'db_name' set single_user                                    --//切换单用户模式

dbcc checkdb('db_name',REPAIR_ALLOW_DATA_LOSS)            --//修复损坏数据库日志

alter database 'db_name' set multi_user                                     --//切换多用户模式
alter database 'db_name' set online                                            --//切换非紧急模式


之后将数据库导出备份,然后在源服务器上新建数据库并还原备份就可以了!
-------------------------------------
我是单条单条执行的  So 如果需要一起执行的 自行加GO 就可以了!   祝你顺利!!http://www/uc/myshow/blog/misc/gif/E___7479ZH00SIGG.gif
-------------------------------------
是否要执行这一条【 sp_configure 'allow updates', 0 】,说实话我也不清楚,因为是在测试机进行的修复操作,所以我并没有执行这一条,也不太清楚不执行会对数据库有什么影响。 我修复后直接导出备份 转回生产环境的!哈哈!   因总监要求的,这个需要操作master,所以要求在测试机快照环境下修复!http://www/uc/myshow/blog/misc/gif/E___6721EN00SIGG.gif

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有