同行SQL2000数据库损坏,镜像时出现的坏道导致数据库无法在软件下运行,数据库可以正常挂载,但是损坏的是系统表所以无法在软件下运行而且DBCC检测报错,
可以看到sysindexes系统表损坏,还有不少索引也损坏了,很多朋友想导表的方式就可以了或许直接DBCC修复即可,但是客户需要软件能够直接运行,通过导表的方式肯定不能在软件下使用,客户那边不接受,我们看下DBCC直接修复的效果如何?
repair_allow_data_loss 是最低的修复级别(对于由 DBCC CHECKDB (CGQTQHYD ) 发现的错误而言)。
修复时候数据库直接回避了DBCC的修复语句,而且不能直接对数据库系统表进行修复。。
DBCC语句对于数据表损坏是可以选择丢数据修复的,但是对于系统表是不行的!
这时候有2种思路去解决,如果用dbcc checkdb加fix参数也没法修复的话,只能考虑重复用select * from tablename where id between and 来逐步缩小数据损坏的范围,这种方法繁琐且操作麻烦,,还有一种就是通过将损坏的ID页面全部整合之后通过我们写的工具直接进行修复。。
最终将损坏的索引页面全部收集之后修复,,修复完成之后,直接DBCC再次检测数据看一下?
可以看到全部检测通过,没有任何索引报错,且sysindexes系统表完整修复,。
最终数据库完整在软件下运行,数据没有丢失!~!
上海甲驭数据恢复中心采用先进的国际标准和专业的运营模式,秉承“数据无价 客户至上”的服务理念,专业从事数据恢复服务及其产品研发。是国内最早专业从事数据恢复服务的公司,拥有资探数据恢复技术团队;可提供服务器数据恢复,硬盘数据恢复,raid数据恢复,mac苹果数据恢复等服务以及监控录像数据恢复软件,数码照片恢复软件,手机数据恢复软件等软件。24小时服务热线:4000774377。其自身强大的软件研发实力以及对底层原理性内容的深入研发,使得在处理各种逻辑数据恢复时游刃有余。