SQLServer误解30天第十六天数据损坏与修复
误区16:#关于数据的损伤和修复了许多误解许多版本的轶事都不正确。
我已经听说过很多关于数据修复能做什么,什么不能做,什么会造成数据损坏,以及损害是否可以自行消失,事实上,我已经写了很多关于这种问题的文章,所以这个博客可以是谣言终结者的总结。我希望你能得到一个收获。
首先,修复数据你可以做什么,不可以做什么,我写博客的误解在数据库修复覆盖13的错误不是是否可以修复错误,DBCC CHECKDB(当然不是)来repair_allow_data_loss会造成数据丢失(名字真是让人困惑)。
其次,许多人抱怨DBCC CHECKDB的首次运行错误会消失在自己的第二运行。这是一个很好的解释:通过DBCC CHECKDB检测错误的第一页不是页面配置集的一部分,所以它不能显示当运行DBCC二倍。我有一个详细的解释误解:他们可以在:腐败消失。
另一个广泛的传闻是,长时间运行的操作,如索引重建,大容量插入数据,数据库或文件收缩,会造成页面的伤害。其实不是,除非SQL Server中存在错误的情况下(非常罕见)。没有T-SQL语句导致数据出错。我对这一详细解释几年前写了一篇文章:搜索引擎质量# 26:在造成腐败的神话。
我希望这篇文章有助于澄清这个概念。