最近在查询SQL时遇到SQL文件错误,可能是文件数据已损坏。解决过程分享给大家。

问题描述

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

解决方案

1.备份数据库(重要);

2.执行修复SQL语句(分步执行):

--1.设置数据库为单用户模式(会立即断开其他所有用户的连接)
ALTER DATABASE YourDatabaseName
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
GO --2.修复数据库(允许数据丢失)
DBCC CHECKDB ('YourDatabaseName', REPAIR_ALLOW_DATA_LOSS) --3.单用户模式关闭(多用户模式开启)
ALTER DATABASE YourDatabaseName
SET MULTI_USER;
GO

第2步执行的时间,一般视数据库大小。本次是200GB,大概1个多小时执行完毕。

特别注意执行完第2步后,执行第3步,打开多用户模式。否则造成其他用户无法连接,而且不会有任何提示。

参考文章

http://blog.csdn.net/pj386960300/article/details/6833814

http://blog.csdn.net/szstephenzhou/article/details/39670309

https://docs.microsoft.com/zh-cn/sql/relational-databases/databases/set-a-database-to-single-user-mode

希望本文对你有帮助。

SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确的更多相关文章

  1. 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 Ser ...

  2. 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_ ...

  3. 解决方法:SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正(转载)

    引用:http://luowei1371984.blog.163.com/blog/static/44041589201491844323885/ SQL2008运行select count(*) f ...

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

    背景:新建DB_GZN 恢复数据库备份文件 执行:          select * from VI_MPS_PAPLT 错误提示: 消息 824,级别 24,状态 2,第 2 行 SQL Serv ...

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

    今天sql-server数据库突然报错: SQL Server 检測到基于一致性的逻辑 I/O 错误 校验和不对(应为: 0x7c781313,但实际为: 0x67a313c9). 在文件 'C:\P ...

  6. 解决SQL Server管理器无法连接远程数据库Error: 1326错误

    解决SQL Server管理器无法连接远程数据库Error: 1326错误 我们在在使用SQL Server时都会遇到使用SQL Server Management Studio无法连接远程数据库实例 ...

  7. Sql Server 检测死锁的SQL语句

    首先创建一个标量值函数DigLock,用来递归检测SqlServer中的每一个会话是否存在加锁循环,如果该函数最终返回1则表示检测到了加锁循环 (也就是说检测到了死锁),如果最终返回0则表示没有检测到 ...

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

    文章标题: 一行导出所有任意微软SQL serer数据脚本-基于Python的微软官方mssql-scripter工具使用全讲解 关键字 : mssql-scripter,SQL Server 文章分 ...

  9. 更改计算机名称后 导致 sql server 2008 R2 用windows账户不能附加的错误解决办法

    出错背景:本人想用sql server 2008 R2 附加sql server 2005数据库出现拒绝访问,后查询网站得知,要用windows身份验证方式登录进去附加, 然后我就用windows身份 ...

随机推荐

  1. 那些年,我们追过的RPC

    1974年冬,互联网大师 Jon Postel发表了RFC674:“Procedure Call Protocol Documents,Version 2”,尝试定义一种在包含70个节点的网络中共享资 ...

  2. [OPEN CV] 常用视频操作方法

    一.视频的定义 视频(Video)泛指将一系列静态影像以电信号的方式加以捕捉.纪录.处理.储存.传送与重现的各种技术.连续的图像变化每秒超过24帧(frame)画面以上时,根据视觉暂留原理,人眼无法辨 ...

  3. ECS上搭建Docker(CentOS7)

    本文讲述Docker在CentOS系统上的部署过程.Ubuntu系统下安装docker,您可以点击此处查看.更多详细的实践您可以参考docker实践文档 适用对象 适用于熟悉Linux操作系统,刚开始 ...

  4. jQuery学习之旅 Item8 DOM事件操作

    1.jquery页面载入事件 1.传统加载事件 <body onload="函数名()"> 页面全部html和css代码加载完成之后再调用指定的onload函数 win ...

  5. 运维监控利器Nagios之:nagios配置详解

    http://ixdba.blog.51cto.com/2895551/752870 一.nagios配置过程详解 1.nagios默认配置文件介绍  nagios安装完毕后,默认的配置文件在/usr ...

  6. &amp;

    在 xml 中,不能直接使用 '&' 表示 '&',要转译为 '&'  (转译序列个字符不能有空格,区分大小写,以';'结束,不要丢了分号哦 ;    amp;不是" ...

  7. 【组合数学】Bzoj2916 [Poi1997]Monochromatic Triangles

    Description 空间中有n个点,任意3个点不共线.每两个点用红线或者蓝线连接,如果一个三角形的三边颜色相同,那么称为同色三角形.给你一组数据,告诉你哪些点间有一条红线,计算同色三角形的总数. ...

  8. BZOJ_3438_小M的作物_最小割

    BZOJ_3438_小M的作物_最小割 Description 小M在MC里开辟了两块巨大的耕地A和B(你可以认为容量是无穷),现在,小P有n中作物的种子,每种作物的种子 有1个(就是可以种一棵作物) ...

  9. EntityFramework Core依赖注入上下文方式不同造成内存泄漏了解一下?

    前言 这个问题从未遇见过,是一位前辈问我EF Core内存泄漏问题时我才去深入探讨这个问题,刚开始我比较惊讶,居然还有这种问题,然后就有了本文,直接拿前辈的示例代码并稍加修改成就了此文,希望对在自学E ...

  10. 离线安装mysql数据库

    开源数据库mysql,目前使用很广泛.作为程序员开发项目时,与关系型数据库打交道最多的估计也是mysql了.那么本文首先讲解如何离线安装mysql数据库,毕竟有很多项目部署在内网. 1.离线安装 本人 ...