问题描述:数据库出现如下异常

SQL Server 检测到基于一致性的逻辑 I/O 错误 页撕裂(签名应该为: 0x55555555,但实际为: 0x55555545)。在文件 'E:"dbYGSC"SunnyGov.mdf:MSSQL_DBCC17' 中、偏移量为 0x000000001aa000 的位置对数据库 ID 17 中的页 (1:213) 执行 读取 期间,发生了该错误。SQL Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。

原因分析:可能是数据库文件较大,从一个磁盘复制到另一个磁盘时,由于磁盘的不稳定性所致。

解决方法:看具体是执行哪个Sql语句报的错,找到此Sql语句相关的表,对这些表进行“DBCC CHECKTABLE”修复操作。

如果修复表还是不行,那就修复整个数据库“DBCC CHECKDB” 。

注:修复表或数据库,要使数据库处于单用户模式下,Sql如下。

ALTER DATABASE YGSCOA SET SINGLE_USER

dbcc checktable ('Transfer_TransactInfo',REPAIR_ALLOW_DATA_LOSS) with NO_INFOMSGS,TABLOCK

ALTER DATABASE YGSCOA SET MULTI_USER

如果“ALTER DATABASE YGSCOA SET SINGLE_USER” 语句两分钟内还没执行完,那就将Sql服务重启下。

posted on 2008-10-28 08:17  znyin  阅读(2119)  评论(1编辑  收藏  举报