0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【数据库数据恢复】华为云ECS网站服务器mysql数据库数据恢复案例

Frombyte 来源:Frombyte 作者:Frombyte 2023-01-17 15:40 次阅读

数据库数据恢复环境:

华为云ECS,linux操作系统;

mysql数据库,实例内数据表默认存储引擎为innodb。

数据库故障:

在执行数据库版本更新测试时,用户误将本应在测试库测试的sql脚本执行在生产库中,导致部分表被truncate,部分表内少量数据被delete。

数据库恢复过程:

1、由于该ECS内有其他业务在正常运行中,为避免被truncate表的底层数据不被破坏,首先镜像备份mysql数据库data目录所在分区。

poYBAGPGUKOATvGbAACu_9nB79g905.png

北亚数据恢复——mysql数据恢复

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

pYYBAGPGUKyANaGiAADL7XSRMxw340.png

北亚数据恢复——mysql数据恢复

3、读取数据段内系统表信息,获取需要恢复的表在系统表内的注册信息。

4、在下载完成的数据段文件内提取对应于各表的数据页,解析对应表的.frm文件获取到该表的表结构信息。通过表结构信息获取到底层数据分配规则,按照规则拆分数据段内二进制数据并对不同类型进行字符展示转换(各类整型、浮点型、时间型等),完成数据段到sql语句的转换。

5、恢复被delete数据的表,过程和恢复truncate表的类似,不同点在于解析数据时需要提取被标注为“delete”的记录。

6、根据解析出的表结构信息在环境中的mysql实例内创建表,并将恢复出的数据导入。

poYBAGPGULWAScjBAAe_HCDtdZM695.png

北亚数据恢复——mysql数据恢复

poYBAGPGULWAQQjxAAnEUPibiqw556.png

北亚数据恢复——mysql数据恢复

7、由于直接从底层抓取出的记录可能存在主键不唯一(引擎在存储时产生的临时记录)和记录重复(缓冲段)以及乱码(扫描数据段时出现特征值匹配成功但不属于该表的数据段)等情况,提取出的记录可能存在异常,需要北亚企安数据恢复工程师手动处理。

8、开启远程桌面,由用户验证数据的准确性和完整度。经过反复验证,truncate表和delete记录的表都完整恢复。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据恢复
    +关注

    关注

    10

    文章

    420

    浏览量

    16891
  • 数据库
    +关注

    关注

    7

    文章

    3592

    浏览量

    63382
  • 华为云
    +关注

    关注

    3

    文章

    2156

    浏览量

    16811
收藏 人收藏

    评论

    相关推荐

    labview远程访问服务器mysql数据库

    大神求助!!!求问怎么通过labview读取服务器中的数据库,使用mysql写的数据库
    发表于 04-01 20:57

    阿里数据库备份DBS商业化发布,数据库实时备份到OSS

    (Database Backup,简称DBS)是为数据库提供连续数据保护、低成本的备份服务。 它可以为多种环境的数据提供强有力的保护,包括企业数据
    发表于 05-30 17:49

    MySQL数据库使用

    关于MySQL数据库的简单操作
    发表于 10-24 14:32

    请问 电脑上的labview软件通过labsql数据访问工具 访问华为服务器上面的SQL Server数据库

    请问 电脑上的labview软件通过labsql数据访问工具 访问华为服务器上面的SQL Server数据库。这里面用到了客户端
    发表于 03-23 11:18

    资料下载:数据库网关-欧姆龙PLC与MySQL/SQLServer/PostgreSQL数据库实时双向通讯

    通过数据库智能网关IGT-DSER实现欧姆龙NJ501的PLC与服务器数据库双向通讯,网关支持MySQL和SQLServer,这里选择的是SQLServer。首先,通过navicat(
    发表于 07-02 07:23

    如何通过NodeMCU将传感数据存储到MySQL数据库

    如下:本文有两种方案:采用服务器(EMQ X CLOUD)部署,然后在服务器部署宝塔并新建MySQL
    发表于 11-03 08:34

    树莓派使用Socket发送数据至阿里服务器ECS并存入数据库的方法

    的信息;深联智达 DL-20 2.4G zigbee无线串口收发模块将采集到的信息从单片机发送给树莓派;树莓派4B将接收到的数据再转发给阿里服务器ECS;阿里
    发表于 02-18 06:48

    鸿蒙应用java开发,使用jdbc连接服务器mysql数据库报错怎么解决

    鸿蒙应用java开发,使用jdbc连接服务器mysql数据库出现问题我自己写了一个连接数据库的demo,代码如下public class
    发表于 04-02 10:54

    有没有mcu远程读写服务器mysql数据库方法?

    有没有mcu通过控制wifi芯片远程读写服务器mysql数据库?相应的mcu和wifi模块的数据手册及控制方法?
    发表于 09-28 06:02

    服务器数据恢复—云服务器ECS数据恢复案例

    服务器数据恢复环境: 阿里云ECS网站服务器,linux操作系统+
    的头像 发表于 11-07 15:10 489次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—云<b class='flag-5'>服务器</b><b class='flag-5'>ECS</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    数据库数据恢复MySQL数据库表误删除记录的数据恢复案例

    数据库数据恢复环境: 一台本地windows sever操作系统服务器服务器上部署mysql
    的头像 发表于 11-09 15:16 679次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—<b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b>表误删除记录的<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    MySQL数据库是如何应对故障恢复数据恢复回滚的问题呢?

    今天这篇文章,我想聊一聊MySQL数据库是如何应对故障恢复,与数据恢复回滚的问题。一个最基本的数据库
    的头像 发表于 11-27 10:04 381次阅读
    <b class='flag-5'>MySQL</b><b class='flag-5'>数据库</b>是如何应对故障<b class='flag-5'>恢复</b>与<b class='flag-5'>数据</b><b class='flag-5'>恢复</b>回滚的问题呢?

    数据库数据恢复—未开启binlog的Mysql数据库数据恢复案例

    mysql数据库数据恢复环境: 本地服务器,windows server操作系统 ,部署有mysql
    的头像 发表于 12-08 14:18 388次阅读
    <b class='flag-5'>数据库</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>—未开启binlog的<b class='flag-5'>Mysql</b><b class='flag-5'>数据库</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例

    服务器数据恢复-华为ECS服务器数据恢复案例

    服务器数据恢复环境: 华为ECS服务器,linux操作系统,
    的头像 发表于 12-27 15:03 415次阅读
    <b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>-<b class='flag-5'>华为</b><b class='flag-5'>ECS</b>云<b class='flag-5'>服务器</b><b class='flag-5'>数据</b><b class='flag-5'>恢复</b>案例