月归档:六月 2012

Sql Server检测到基于一致性的逻辑IO错误

我们有时碰到这个问题会束手无策,备份或者重新生成索引的时候发生检测到基于一致性的逻辑IO错误,这时候可以通过dbcc checkdb或者dbcc checktable来检测一下是否是数据库或者表有问题。如果提示报错,可以通过下面的命令进行修复。 use dbname go ALTER DATABASE dbname SET SINGLE_USER DBCC CHECKDB (dbname, REPAIR_FAST) go 由于dbcc checkdb的repair_allow_data_loss修复需要在单用户模式下进行,所以需要加上ALTER DATABASE dbname SET SINGLE_USER 这行命令。 有时候dbcc checkdb会长时间占用数据库,可以将有问题的表备份后将表删除后重建表,将数据重新导入即可恢复。

发表在 Sql Server | 评论关闭