news 2026/6/23 18:19:58

sql server 事务日志备份异常恢复案例---惜分飞

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
sql server 事务日志备份异常恢复案例---惜分飞

有客户的sql server数据库运行在双机环境中,由于心跳网络异常导致双机频繁切换最终数据库损坏DBCC检查报大量错误

DBCC CHECKDB('OLTP') WITH NO_INFOMSGS, ALL_ERRORMSGS

Msg 8909, Level 16, State 1, Line 1

Table error: Object ID 0, index ID -1, partition ID 0, alloc unit ID 28147935764938752 (typeUnknown), page ID (1:33059984) contains an incorrect page IDinits page header. The PageIdinthe page header = (68:3276868).

Msg 8909, Level 16, State 1, Line 1

Table error: Object ID 0, index ID -1, partition ID 0, alloc unit ID 11540680206712832 (typeUnknown), page ID (1:33059985) contains an incorrect page IDinits page header. The PageIdinthe page header = (102:6488116).

Msg 8909, Level 16, State 1, Line 1

Table error: Object ID 0, index ID -1, partition ID 0, alloc unit ID 16888988233302016 (typeUnknown), page ID (1:33059986) contains an incorrect page IDinits page header. The PageIdinthe page header = (93:6619252).

Msg 8909, Level 16, State 1, Line 1

Table error: Object ID 0, index ID -1, partition ID 0, alloc unit ID 16888988233302016 (typeUnknown), page ID (1:33059987) contains an incorrect page IDinits page header. The PageIdinthe page header = (93:6619252).

Msg 8909, Level 16, State 1, Line 1

Table error: Object ID 0, index ID -1, partition ID 0, alloc unit ID 16888988233302016 (typeUnknown), page ID (1:33059988) contains an incorrect page IDinits page header. The PageIdinthe page header = (93:6619252).

Msg 8909, Level 16, State 1, Line 1

Table error: Object ID 0, index ID -1, partition ID 0, alloc unit ID 28147836977938432 (typeUnknown), page ID (1:33059989) contains an incorrect page IDinits page header. The PageIdinthe page header = (73:6619248).

Msg 8909, Level 16, State 1, Line 1

……………………

Object ID 1961110077, index ID 0, partition ID 72057594217627648, alloc unit ID 72057594256687104 (typeIn-row data): Page (1:36535484) could not be processed. See other errorsfordetails.

Msg 8928, Level 16, State 1, Line 1

Object ID 1961110077, index ID 0, partition ID 72057594217627648, alloc unit ID 72057594256687104 (typeIn-row data): Page (1:36535485) could not be processed. See other errorsfordetails.

Msg 8928, Level 16, State 1, Line 1

Object ID 1961110077, index ID 0, partition ID 72057594217627648, alloc unit ID 72057594256687104 (typeIn-row data): Page (1:36535486) could not be processed. See other errorsfordetails.

Msg 8928, Level 16, State 1, Line 1

Object ID 1961110077, index ID 0, partition ID 72057594217627648, alloc unit ID 72057594256687104 (typeIn-row data): Page (1:36535487) could not be processed. See other errorsfordetails.

CHECKDB found 0 allocation errors and 24 consistency errorsintable'CIOMessage'(object ID 1961110077).

CHECKDB found 0 allocation errors and 17955 consistency errorsindatabase'OLTP'.

Completiontime: 2025-11-19T17:13:03.2762122+08:00

客户每天做全库备份,每4小时做事务日志备份,备份类似这样的情况


客户尝试使用全备进行恢复,结果发现只有13日的全备是好的,可以还原出来数据库,其他备份还原直接报错,基于这样的情况,可以希望把数据恢复到11月19日.我接手这个故障之后,先尝试还原13日的备份


然后尝试人工应用事务日志备份,类似命令

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_13_030001_7745248.trn'WITH NORECOVERY

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_13_060001_3581210.trn'WITH NORECOVERY

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_13_090001_2856408.trn'WITH NORECOVERY

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_13_120002_0713663.trn'WITH NORECOVERY

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_13_150001_7305524.trn'WITH NORECOVERY

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_13_180000_9123036.trn'WITH NORECOVERY

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_13_210001_3663138.trn'WITH NORECOVERY

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_14_000001_1605695.trn'WITH NORECOVERY

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_14_030001_7280782.trn'WITH NORECOVERY

………………

RESTORE LOG OLTP1121 FROM DISK ='D:\share\OLTP_backup_2025_11_17_180001_1343952.trn'WITH NORECOVERY

结果在OLTP_backup_2025_11_17_180001_1343952文件位置报错

Processed 0 pagesfordatabase'OLTP_1121',file'OLTP'onfile1.

Processed 10388 pagesfordatabase'OLTP1121',file'OLTP_log'onfile1.

Msg 9004, Level 16, State 3, Line 1

An error occurredwhileprocessing the logfordatabase'OLTP_1121'. If possible, restore from backup.

If a backup is not available, it might be necessary to rebuild the log.

Msg 3013, Level 16, State 1, Line 1

RESTORE LOG is terminating abnormally.

Completiontime: 2025-11-21T13:41:54.2352031+08:00

通过图形化界面进行事务日志恢复也报错


基于这样的情况,数据库层面的正常恢复途径只能恢复到11月17日18时左右数据,因为后面的日志发生了损坏,无法继续正常恢复,对于这种情况,我们这边使用日志解析工具对剩余事务日志备份进行解析,生成.sql文件



然后客户把解析出来的.sql文件依次在会到11月17日18时的库上面去执行,这样顺利吧客户整体数据库恢复到最新状态,完成本次恢复任务(注意后续可能一些类似序列值需要调整)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/22 22:29:05

蓝牙音箱EMC整改实战——从±8KV静电复位到稳定过检的技术路径

某款多功能蓝牙音箱在CE认证测试中暴露严重缺陷:蓝牙模式下充电时,空气放电8KV即触发复位。深圳市阿赛姆电子2025年11月发布的整改案例显示,此类问题在消费类音频产品中发生率超过30%。 一、故障现象定位 测试环境依据IEC 61000-4-2标准执行…

作者头像 李华
网站建设 2026/6/23 4:36:50

强力解锁Obsidian时间管理:告别笔记混乱的日历插件实战

强力解锁Obsidian时间管理:告别笔记混乱的日历插件实战 【免费下载链接】obsidian-calendar-plugin Simple calendar widget for Obsidian. 项目地址: https://gitcode.com/gh_mirrors/ob/obsidian-calendar-plugin 还在为找不到上周的会议记录而抓狂&#x…

作者头像 李华
网站建设 2026/6/17 16:09:35

GitHub Actions下载工件全攻略:从基础到高级应用

GitHub Actions下载工件全攻略:从基础到高级应用 【免费下载链接】download-artifact 项目地址: https://gitcode.com/gh_mirrors/do/download-artifact 在持续集成和持续部署(CI/CD)流程中,工件(Artifacts&am…

作者头像 李华
网站建设 2026/6/23 7:04:23

24.vsftpd服务--CentOS7

下载vsftpd服务 yum install -y vsftpd一、匿名访问ftp服务 首先备份好源文件 再编辑配置文件 [rootlocalhost ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak [rootlocalhost ~]# vim /etc/vsftpd/vsftpd.conf需要修改的值 # 1. 开启匿名访问(核心&a…

作者头像 李华
网站建设 2026/6/22 20:28:54

在Python中使用Kafka帮助我们处理数据

Kafka是一个分布式的流数据平台,它可以快速地处理大量的实时数据。Python是一种广泛使用的编程语言,它具有易学易用、高效、灵活等特点。在Python中使用Kafka可以帮助我们更好地处理大量的数据。本文将介绍如何在Python中使用Kafka简单案例。 一、安装K…

作者头像 李华
网站建设 2026/6/22 22:05:33

iPhone15信号算弱网嘛,工作中又该如何进行弱网测试?

iPhone信号差,已经成了历史的难题了。问题一直在,从未被解决,或许苹果自己就没打算彻底解决这个问题,毕竟牙膏是要慢慢挤的,一次解决了,后面怎么割韭菜啊。 可能有朋友就问了,信号差咋了&#…

作者头像 李华