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

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

时间:2023-03-27 18:58:24浏览次数:51  
标签:错误 数据库 Server SQL 一致性 执行 撕裂

 

执行Sql出错:select count(0) from ***

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

解决方案

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

  1. 执行修复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步,打开多用户模式。否则造成其他用户无法连接,而且不会有任何提示。

转载自 https://blog.csdn.net/qq_23663693/article/details/129397950

标签:错误,数据库,Server,SQL,一致性,执行,撕裂
From: https://www.cnblogs.com/riddly/p/17261965.html

相关文章

  • Magento模块开发之数据库SQL操作方法说明
    今天主要来看Magento中的Mysql4/Resource(资源)如何对数据库进行操作,来执行更为复杂的sql语句。在Magento中Model通常都会继承Mage_Core_Model_Abstract,而这个Abst......
  • MySQL面经
    内容援引自JavaGuide、哔哩哔哩黑马程序员数据库从入门到精通,感谢各位大神原创分享数据库Mysql常见的关系型数据库包括mysql、SQLServer、Oracle、常见的非关系型数据库......
  • docker根据镜像,启动一个mysql容器命令
    dockerrun--namemysql-d-it-p3307:3306-eMYSQL_ROOT_PASSWORD=rootmysql上述命令中,--name后的mysql,是容器的名字;最后一个mysql,是已存的mysql镜像的名字-p330......
  • Django使用已经存有数据的mysql数据库(搬自简书 LeslieLiang)
    由于在django中数据表的操作都是通过models去执行的,所以在你需要使用数据库之前需要在app中的models.py文件中事先去写好需要的表及字段,这是一件比较麻烦的事,那如何在事先......
  • MySQL索引、事务与储存引擎
     一、MySQL索引1.1索引的概念 索引是一个排序的列表,在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址(类似于C语言的链表通过指针指向......
  • MySQL数据库用户管理
     一、用户管理1.1新建用户CREATEUSER'用户名'@'来源地址'[IDENTIFIEDBY[PASSWORD]'密码'];‘用户名’:指定将创建的用户名‘来源地址’:指定新创建的用......
  • 异常:Cannot execute request on any known server
    当在启动springcloud 微服务 provider时,如果出现异常信息:Cannotexecuterequestonanyknownserver,原因是,在默认设置下,eureka服务注册中心也会将自己作为客户端来......
  • MYSQL-另一种行转列的实现方式
    行转列的实现方式:使用mysql.help_topic--行转列SELECTb.help_topic_id,substring_index(a.levels,',',b.help_topic_id+1),substring_index(substring_inde......
  • mysql执行计划explain
    https://www.cnblogs.com/developer_chan/p/9211487.html 重点梳理:当Extra含有Usingindex,说明查询语句中使用了索引覆盖type的好坏:system:表中只有一行数据,特例,一般......
  • 一套sql面试题的mysql解法
    1.表T(a,b,c,d),要根据字段c排序后取第21—30条记录显示,请给出sqlselect*fromTorderbyc[desc]limit20,102.表T(a,b,c,d)和表T1(a1,b1,c1,d1),表T中a字段是T1中......