服务器数据恢复—云服务器mysql数据库表被truncate的数据恢复案例

云服务器数据恢复环境:
阿里云ECS网站服务器,linux操作系统+mysql数据库。

云服务器故障:
在执行数据库版本更新测试时,在生产库误执行了本来应该在测试库执行的sql脚本,导致生产库部分表被truncate,还有部分表内的少量数据被delete。该实例内数据表均采用innodb作为默认存储引擎。

云服务器数据恢复过程:
1、由于用户ECS内还有其他业务在运行,为避免被truncate表的底层数据被破坏,首先将mysql数据库的data目录所在分区备份。

2、需要恢复的十多个表内不存在大字段类型值和myisam引擎表,直接扫描数据段并下载恢复所必需的数据库段碎片。由于innodb引擎表恢复数据须依赖表结构信息,mysql的表结构信息存储于对应表名的.frm文件内。经过检测发现.frm文件完好,可直接使用。下载需要恢复的表所对应的.frm文件。

3、读取&分析数据段内系统表信息,获取需要恢复的十多个表在系统表内的注册信息。
4、在下载完成的数据段文件内提取对应于各表的数据页,解析对应表的.frm文件获取该表的表结构信息。通过表结构信息获取到底层数据分配规则,北亚企安数据恢复工程师按照规则拆分数据段内二进制数据并将不同类型数据进行字符展示转换(各类整型、浮点型、时间型等),完成数据段到sql语句的转换。
5、恢复被delete数据的表的流程类似恢复被truncate表的流程,差异在于解析数据时需要提取被标注为“delete”的记录。
6、根据解析出的表结构信息在恢复环境中的mysql实例内创建表,将恢复出的数据导入。
7、由于直接从底层抓取出的记录可能存在主键不唯一(引擎在存储时产生的临时记录)、记录重复(缓冲段)和乱码(扫描数据段时出现特征值匹配成功但不属于该表的数据段)等情况,北亚企安数据恢复工程师人工处理提取记录存在的异常。
8、由用户方远程桌面的方式验证恢复数据的正确性和完整性。经过用户方工程师的多方验证,确认被truncate的表和被delete记录的表的数据恢复完整,数据正确有效。本次数据恢复工作完成。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/164465.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

六种最常见的软件供应链攻击

软件供应链攻击已成为当前网络安全领域的热点话题,其攻击方式的多样性和复杂性使得防御变得极为困难。以下我们整理了六种常见软件供应链攻击方法及其典型案例: 软件供应链攻击已成为当前网络安全领域的热点话题,其攻击方式的多样性和复杂性…

pytorch直线拟合

目录 1、数据分析 2、pytorch直线拟合 1、数据分析 直线拟合的前提条件通常包括以下几点: 存在线性关系:这是进行直线拟合的基础,数据点之间应该存在一种线性关系,即数据的分布可以用直线来近似描述。这种线性关系可以是数据点…

Oracle RAC是啥?

Oracle RAC,全称是Oracle Real Application Cluster,翻译过来为Oracle真正的应用集群,它是Oracle提供的一个并行集群系统,由 Oracle Clusterware(集群就绪软件) 和 Real Application Cluster(RA…

C语言每日一题(25)链表的中间结点

力扣 876. 链表的中间结点 题目描述 给你单链表的头结点 head ,请你找出并返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 思路分析 快慢指针法 用一慢一快指针遍历整个链表,每次遍历,快指针都会比慢指针多…

大文件传输小知识 | UDP和TCP哪个传输速度快?

在网络世界中,好像有两位“传输巨头”常常被提起:UDP和TCP。它们分别代表着用户数据报协议和传输控制协议。那么它们是什么?它们有什么区别?它们在传输大文件时的速度又如何?本文将深度解析这些问题,帮助企…

获奖名单出炉 ,鲲鹏应用创新大赛2023全国总决赛圆满落幕

11月2日,以“数智未来 因你而来”为主题的鲲鹏应用创新大赛2023全国总决赛在四川成都顺利举办。经过长达6个月的层层筛选与激烈角逐,最终从三大赛事、5大赛道中评选出了13个金奖、16个银奖、19个铜奖。 鲲鹏应用创新大赛是面向全球开发者的顶级赛事&…

软件开发中常见的设计原则

软件开发中常见的设计原则 1. 单一责任原则2. 开放封闭原则3. 里氏替换原则4. 接口分离原则5. 依赖倒置原则6. 迪米特法则7. 合成复用原则8. 共同封闭原则9. 稳定抽象原则10. 稳定依赖原则 简写全拼中文翻译SRPThe Single Responsibility Principle单一责任原则OCPThe Open Clo…

做什么数据表格啊,要做就做数据可视化

是一堆数字更易懂,还是图表更易懂?很明显是图表,特别是数据可视化图表。数据可视化是一种将大量数据转化为视觉形式的过程,通过图形、图表、图像等方式呈现数据,以便更直观地理解和分析。 数据可视化更加生动、形象地…

实战!工作中常用的设计模式

文章目录 前言一、策略模式1.1、 业务场景1.2 、策略模式定义1.3、 策略模式使用1.3.1、一个接口,两个方法1.3.2、不同策略的差异化实现1.3.3、使用策略模式 二、责任链模式2.1、业务场景2.2、责任链模式定义2.3、责任链模式使用2.3.1、一个接口或者抽象类2.3.2、每…

JavaScript爬虫程序爬取游戏平台数据

这次我用一个JavaScript爬虫程序,来爬取游戏平台采集数据和分析的内容。爬虫使用了爬虫IP信息,爬虫IP主机为duoip,爬虫IP端口为8000。以下是每行代码和步骤的解释: // 导入所需的库 const axios require(axios); const cheerio …

一种libuv实现websockets服务的解决方案

方法是libuv用多事件循环来驱动。说起来容易,做起来还是比下面的方法更容易: 上图是某位网友的方法代表子大部分网络资料。此方法对部署不友好,因为软件仓库提供的libwebsockets是不能用了。如何简化部署,利用好现有的软件仓库呢&…

复现 文件上传漏洞bypass

1,弱口令发现目标网站,为宝塔搭建的dedecms,于是自己服务器搭建同样的 2 get请求phpinfo() 有waf,上传文件有waf 3,寻找资料,发现是,宝塔的ngix防火墙。同样在自己的服务器上部署成功。顺便还看…