修复SQLSERVER2000数据库之实战经验[3]

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 leimin 的 blog

 this problem does not cause any data or index corruption. the problem is in the metadata which is corrected only by  dropping and re-creating the indexes.
        这些问题不会引起数据或索引的损坏,这些问题的元数据是正确的,只是删除再重新建立索引。
看来问题是修改了。


再次运行dbcc checkdb('pos_db'),再次运行:dbcc checkdb('pos_db'),message没有错误信息。

ok成功修复:-)


4.检查修复后的数据库并且备份数据库
检查dbcc checkdb报错的相关表,和没有执行dbcc之前的记录数进行比较,发现有一个表少了40条记录。郁闷:-<

5.总结

1.raid5并不能保证sqlserver 2000 数据库的数据文件的完整性;
2.sqlerver 2000的备份程序不验证数据库文件的数据完整性;如果你的数据文件有问题,备份时也不图示;
3.dbcc checkdb的repair_allow_data_loss并不是非常安全的,不能修复所有的错误,即使是对不完整页(torn page)的修复也会着成数据丢失;
4.dbcc checkdb的repair_allow_data_loss参数无法修复所有的错误;

参考文章:
http://support.microsoft.com/default.aspx?scid=kb;en-us;298806
http://support.microsoft.com/default.aspx?scid=kb;en-us;284440
http://support.microsoft.com/default.aspx?kbid=320434
http://support.microsoft.com/default.aspx?scid=kb;en-us;828339
http://support.microsoft.com/default.aspx?scid=kb;en-us;308795

本文关键:SQLSERVER,数据库,恢复数据
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top