中的mdmp文件_记一次MSSQL数据库产生大量mdmp文件及解决办法

概述

今天襄阳反馈有台SqlServer服务器后出现“事务日志空间已满”的错误,以为长时间没有截断日志,导致日志文件太大,结果发现不是此问题,观察发现在Sqlserver的Log日志目录中堆积了大量的sqldump*.log,sqldump*.txt,sqldump*.mdmp文件,一分钟有很多个这样的文件,将磁盘空间耗尽。

3f5f547252fab46f97a31225e39855ea.png

部分报错:

85d4d8c6b05057766d24102e9b91255f.png

下面简单介绍下解决过程~


1、检查数据库完整性

DBCC CHECKDB('msdb')
8394e013835034ea16a19ff6acd3d5f1.png

观察结果可以发现sysjobhistory表有问题:

sysjobhistory的 DBCC 结果。消息 8933,级别 16,状态 1,第 1 行表错误: 对象 ID 149575571,索引 ID 1,分区 ID 72057594039828480,分配单元 ID 72057594040811520 (类型为 In-row data)。页 (1:1816) 上的低键值(级别 0)不大于等于父代 (1:474) 槽 3 中的键值。消息 8981,级别 16,状态 1,第 1 行表错误: 对象 ID 149575571,索引 ID 1,分区 ID 72057594039828480,分配单元 ID 72057594040811520 (类型为 In-row data)。(1:3069) 的下一指针指向页 (1:1820)。但既未遇到 (1:1820),也未遇到其父级。可能是因为链链接错误。消息 8978,级别 16,状态 1,第 1 行表错误: 对象 ID 149575571,索引 ID 1,分区 ID 72057594039828480,分配单元 ID 72057594040811520 (类型为 In-row data)。页 (1:1821) 缺少上一页 (1:1817) 对它的引用。可能是因为链链接有问题。对象 'sysjobhistory' 的 186 页中有 853 行。CHECKDB 在表 'sysjobhistory' (对象 ID 149575571)中发现 0 个分配错误和 3 个一致性错误。
1121848c869781bbca678c0cecaf2fec.png

2、分析表的索引

DBCC showcontig('sysjobhistory')
d193d4f3c76fe3d738a87a18c12d280b.png

3、重建表索引

DBCC DBREINDEX('sysjobhistory')
68340d317e388cc49ed0ab62a430f8f8.png

4、重新检查数据库完整性

DBCC CHECKDB('msdb')
f640d472440194aba1802d7518a931df.png

后面会分享更多devops和DBA方面内容,感兴趣的朋友可以关注下!

8ae48536d9c8c9aeea953ed71fd020b5.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值