SQL Server 检测到基于一致性的逻辑 I/O 错误

背景:新建DB_GZN 恢复数据库备份文件

执行:          select * from VI_MPS_PAPLT

错误提示:

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

修复过程:

1.ALTER DATABASE DB_GZN SET SINGLE_USER   --设置为单用户

go

2.DBCC CHECKDB (DB_GZN, repair_allow_data_loss) with NO_INFOMSGS   --允许丢失数据

go

3.ALTER DATABASE DB_GZN SET MULTI_USER  -- 设置为多用户

go

执行结果:修复

执行过程提示:

时间: 2024-11-05 13:38:36

SQL Server 检测到基于一致性的逻辑 I/O 错误的相关文章

SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid不正确、数据库日志文 件丢失

客户名称:深圳某科技信息有限公司 数据库类型:sql2000 数据库大小:20g 故障经过 电脑突然断电,软件就显示某数据库错误,无法连接,打开企业管理器,显示数 据库质疑,DBCC查询显示" SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid不正确.数据库日志文件丢失". 处理经过 客户找到我们,然后我们让客户把数据库压缩发给我们,首先我们先对数据进行 检测分析,确定是" I/O 错误 ",然后我们就开始用我们的修复工具对数据进 行全面性的分

SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:1772,但实际为 0:0)。在文件 'D:\Program Files\Microsoft SQL Ser

SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:1772,但实际为 0:0).在文件 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\sgdtcc.MDF' 中.偏移量为 0x00000000dd8000 的位置对数据库 ID 10 中的页 (1:1772) 执行 读取 期间,发生了该错误.SQL Server 错误日志或系统事件日志中的其他消息可能提供了

SQL Server 检测到基于一致性的逻辑 I/O 错误 页撕裂

错误: SQL Server 检测到基于一致性的逻辑 I/O 错误 页撕裂(签名应该为: 0x55555555,但实际为: 0x89021555).在文件 'D:\data\databases.MDF' 中.偏移量为 0x000000051e0000 的位置对数据库 ID 7 中的页 (1:10480) 执行 读取 期间,发生了该错误.SQL Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息.这是一个威胁数据库完整性的严重错误条件,必须立即纠正.请执行完整的数据库一致性检查(

SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确 ||尝试在数据库 5 中提取逻辑页 (1:1640) 失败

use test go ALTER DATABASE test SET SINGLE_USER DBCC CHECKDB (test, repair_allow_data_loss) with NO_INFOMSGS go ALTER DATABASE test SET MULTI_USER go 对于单个数据库报错了,运行这个修复不行.后来我在tempdb运行才可以. dbcc checkdb('tempdb') 其实开始的时候还有另一个错误: 尝试在数据库 5 中提取逻辑页 (1:1640)

sql-server 2005数据库文件恢复(检测到基于一致性的逻辑 I/O 错误)

今天sql-server数据库突然报错: SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x7c781313,但实际为: 0x67a313c9).在文件 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\E_BLOCK_DB.mdf' 中.偏移量为 0x00000000a34000 的位置对数据库 ID 5 中的页 (1:1306) 执行 读取 期间,发生了该错误.SQL Server 错误日志

SQL安装过程中“针对SQL Server 注册表的一致性验证“出错解决方式

1.打开注册表,查找到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\0804],分别打开Counter 和Help 2.打开Counter,把滚动条拉倒最后,然后记下最大的那个值(不同计算机不一样的),记下后关闭窗口 3.同样的打开Help,滚动到最后记最大的那个值(你们的值不一定跟我一样的哦!!!),记下后关闭窗口 4,再重新定位到Perflib的节点上, 5.双击Last Counter然后在

SQL Server数据库镜像基于可用性组故障转移

SQL Server数据库镜像基于可用性组故障转移 微软从SQL Server 2005开始引入数据库镜像,很快成为一个流行的故障转移解决方案.数据库镜像的一个大的问题是故障转移是基于数据库级别的,因此,如果某个数据库故障,镜像只会针对这个数据库切换,但是,其他数据库都仍然在主服务器上.缺点是越来越多的应用程序是基于多个数据库来构建,所以,如果某一个数据库故障转移而其他数据库仍然在主服务器上,那应用程序将无法工作.当这种情况发生的时候,我如何知晓?并执行该应用程序调用的所有数据库一起故障转移呢?

【SQL Server】系统学习之三:逻辑查询处理阶段-六段式

一.From阶段 针对连接说明: 1.笛卡尔积 2.on筛选器 插播:unknown=not unknuwn 缺失的值: 筛选器(on where having)把unknown当做FALSE处理,排除在筛选结果之外.如果比较两个null,结果是不相等的,false check约束中当做true,例如要求某列大于0,当插入null时是成功的,认为null>0是ture.如果比较两个null,结果是相等的,这种比较在unique约束.集合运算(例如union .except).排序.分组,都认为是

一行导出所有任意微软SQL server数据脚本-基于Python的微软官方mssql-scripter工具使用全讲解

文章标题: 一行导出所有任意微软SQL server数据脚本-基于Python的微软官方mssql-scripter工具使用全讲解关键字 : mssql-scripter,SQL Server文章分类: 技术分享 创建时间: 2020年3月30日 _.-"\ _.-" \ ,-" \ \ \ \ \Zoomla逐浪CMS\ \ \ web开发秘笈\ \ \ \ z01.com _.-; \ \ _.-" : \ \,-" _.-" \( _.-&