

我必须执行一个查寻来删除重叠的记录。由于磁盘空间有限我没有足够的空间来实施处理。我也没有数据的备份。我们将数据转移到一个新的磁盘上(以便我能备份并为处理日志的增长提供空间),虽然由于删除了一个日志文件,我们在重新连接数据库时遇到了一些问题。在连接后(4小时后),我试图执行一个查寻,但得到了下面的报错信息:
Server: Msg 823, Level 24, State 2, Line 1
I/O error 23(Data error (cyclic redundancy check).)
detected during read at offset 0x000000167b0000 in file
'F:MDFTriggerTrigger_Data.MDF'.
经过调查,我发现磁盘上有一段损坏的存储区。我目前正在把文件复制到原先的位置。然而,我担心其中的MDF文件已被损坏了。我知道我正在把损坏的数据也在复制回去,但想知道是否有功能或方法来修复损坏的数据吗?你有任何方法来帮助我解决这个问题吗?
发表于04年10月4日
一旦你将数据复制到损坏的磁盘存储区,将它复制回来并不解决问题。首先在数据库执行DBCC来判断问题出现在哪里。如果在索引中,就删除这个索引在重新生成索引来进行清理。如果是图表本身,你必须用你的备份来恢复。