news 2026/10/24 10:25:35

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/10/23 21:04:19

如何配置pythone环境

一、安装python python官网地址 根据电脑操作系统的情况,下载对应的版本 下载安装时,勾选“add path to...”表示把python的环境变量添加到电脑中。现在python做的很智能,安装完毕之后,默认环境变量和pip都已经装好,…

作者头像 李华
网站建设 2026/10/23 7:37:14

命令注入与RCE

目录 介绍 DVWA | Command Injection Low Medium High Impossible Pikachu | RCE 1、rec | exec Ping 代码分析 安全实践 2、rce | exec evel 代码分析 安全实践 加固 介绍 命令注入漏洞(Command Injection Vulnerability)是一种安全漏洞&am…

作者头像 李华
网站建设 2026/10/23 10:45:26

【超详细】漏洞挖掘入门教程:零基础从原理到实战,全流程拆解 + 工具清单,精通看这一篇!

初学者最好不要上手就去搞漏洞挖掘,因为漏洞挖掘需要很多的系统基础知识和一些理论知识做铺垫,而且难度较大…… 较合理的途径应该从漏洞利用入手,不妨分析一些公开的CVE漏洞。很多漏洞都有比较好的资料,分析研究的多了&#xff…

作者头像 李华
网站建设 2026/10/23 9:22:09

从项目需求出发:LangChain 1.0 和 LangGraph 1.0 的选择策略

2025年10月22日,LangChain官方团队正式发布了LangChain 1.0与LangGraph 1.0两大核心框架的正式版本,这不是一场简单的版本升级,而是一次面向AI智能体(Agent)规模化生产应用的关键进化。 这意味着AI应用开发的基础设施已…

作者头像 李华
网站建设 2026/10/23 10:34:47

AIGC Bar中的API站最新使用全指南(2025/12/12)

目录 总览:这篇“全指南”到底解决什么问题 站点定位:它不是“某一个模型”,而是“模型入口的兼容层” 中转/聚合的本质:你买的是“稳定接入体验”,不是“换皮接口” “OpenAI 兼容”的意义:把迁移成本…

作者头像 李华