执行数据库(sql server 2012)报以下错误信息

SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0xb11dc661,但实际为: 0x395240ca)。在文件 'D:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\InterfaceInfo.mdf' 中、偏移量为 0x000000232f8000 的位置对数据库 ID 7 中的页 (1:72060) 执行 读取 期间,发生了该错误。SQL Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。

 

解决办法

 

1  按错误提示信息执行“(DBCC CHECKDB)” 命令。然后提示“数据库要处于单用户模式”

     dbcc checkdb('数据库名称',repair_allow_data_loss)

 

2 执行脚本切换到数据库单用户模式下

    因为我用的是sql server 2012 的数据,执行的脚本如下

--设置为单用户模式
USE master;
GO
ALTER DATABASE AdventureWorks2012
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;

--设置为只读模式
GO
ALTER DATABASE AdventureWorks2012
SET READ_ONLY;

--设置为多用户模式(正常使用也是这个)
GO
ALTER DATABASE AdventureWorks2012
SET MULTI_USER;
GO

 

 3 再次执行     dbcc checkdb('数据库名称',repair_allow_data_loss)

  4 问题修复

 5  设置多用户模式

 

posted on 2017-06-08 14:29  bin790302901  阅读(2170)  评论(0编辑  收藏  举报