位置: 编程技术 - 正文

MySQL中truncate误操作后的数据恢复案例

编辑:rootadmin

推荐整理分享MySQL中truncate误操作后的数据恢复案例,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

实际线上的场景比较复杂,当时涉及了truncate, delete 两个操作,经确认丢数据差不多7万多行,等停下来时,差不多又有共计1万多行数据写入。 这里为了简单说明,只拿弄一个简单的业务场景举例。

测试环境: Percona-Server-5.6.日志格式: mixed 没起用gtid

表结构如下:

基于某个时间点有一个备份或是有全量的binlog是能恢复数据的一个唯一保证。 例如我们的备份就是一个表结构创建语句,binlog pos相关信息: mysql-bin. , 4,然后进行了如下:

?t1时间 程序写入:

?t2时间 某个人员失误

?t3时间 程序写入

MySQL中truncate误操作后的数据恢复案例

现在表里的数据情况:

可以见truncate table操作后,表的自增id又变更为从1开始,原来写入的数据应该是:

如果没生truncate table操作,实际的数据应该为:

而且线上的恢复那个表时和序序开发人员了解才知道,原来那个id和缓存及其它地方有依赖,因为id乱了,也会造成程序错乱。这个时间修复id在程序层错乱的事,留给开发人员了关建是给他们讲明白恢复的结果是什么样,我们的关建任务是把数据恢复出来。好,接下来的工作是开始从binlog中恢复数据。利用: show binary logs; 查看当的log文件分布, 然后利用show binlog events in ‘binary log文件'; 查看log文件的内容,目的是找到truncate发生的日志位置。另外因为基于备份(由log的启始位置)或是从量log, 如果基于备份有log的起始位置,我们需要处理的log文件是启始位置到发生truncate的日值(后面的数据处理不了,会发生主建冲突的错误造成truncate后的数据不能恢复),如果是全量日志,需要从创建完mysql后库后的日志去处理到当前的发生truncate的位置(后面数据会因为主建冲突写不进去)恢复准备工作,创建一个库用于恢复数据,这里创建了一个re_wubx, 及原结构的表: tb_wubx (相当于恢复了备份,过程省略)

我这里有一个备份文件就是那个创建表的sql语句,位置是mysql-bin. , 4在这个案例里我只用cover住mysql-bin.这个文件。

看到这个表刚开始就发生一次truncate, 那其实也可以说明我就恢复刚开始那个truncate到后来那个误操作的truncate table的语句之间的数据就是丢失的数据。这个恢复可以从mysql-bin. pos: 4到mysql-bin. pos: 即:

恢复结果如下:

恢复完成。

在MySQL中生成随机密码的方法 cat/dev/urandom|LC_ALL=Ctr-dc"[:alnum:]"|fold-w|head-Si1N9kUyuZddzsRXFgxAcaDRBRT4PxbuGk6LkX4dN5Xod1TOyrcBxAjlKRjwJR2TxunhQedXagL9RraDEZgfhYQxCurm5eZF参数说明:如果需要特别复杂的

MySQL中从库延迟状况排查的一则案例 今天给一个客户巡检的情况下发从库没有业务的情况mysqld的cpu的一个core占用%.查主库慢查询也没有关于写的SQL.可以说是典的单进程复制把一个cpu占满

在MySQL中使用mysqlbinlog flashback的简单教程 简介:mysqlbinlogflashback功能是淘宝彭立勋(

标签: MySQL中truncate误操作后的数据恢复案例

本文链接地址:https://www.jiuchutong.com/biancheng/347346.html 转载请保留说明!

上一篇:MySQL中修改库名的操作教程(mysql如何修改数据库名)

下一篇:在MySQL中生成随机密码的方法(mysql 随机io)

  • 所得税会计与财务会计比较研究
  • 利润表中利息费用包括什么
  • 企业外币账户开户流程
  • 企业所得税能不能删除重新报
  • 年折旧额怎么计算公式直线法
  • 企业管理咨询有限公司简介
  • 应收代位追偿款是什么意思
  • 速动比率和流动比率下降说明什么
  • 开专票红冲是不是双方都要开信息表
  • 长期借款转入实收资本
  • 费用的完成率怎么计算
  • 奖励给优质供应商会计处理怎么做?
  • 发票丢失可以冲销吗
  • 合伙企业需要交企业所得税吗?
  • 所得税会计核算要点及程序
  • 广告宣传费可以抵扣进项税吗
  • 案例讨论如何进行
  • 财务物料消耗都有哪些
  • 小规模纳税人可以享受小微企业吗
  • 交纳经营所得的个税怎么做分录?
  • 差旅费进项可以跨月抵扣吗
  • 在同一预缴地有多个项目的建筑业纳税人总销售额以什么为标准确定?
  • 进料加工出口退税计算 计划分配率
  • 今年交去年的工会经费账务处理?
  • 活动展开方式怎么写
  • 新笔记本怎么激活windows11
  • 购买机器设备配件账务处理
  • 收到车辆保险发票怎么做分录
  • windows7中
  • window10设置wifi热点
  • php 混淆
  • php 如何下载
  • 委托代销视同买断会计分录怎么写?
  • 计提坏账准备的方法
  • PHP:mcrypt_generic_deinit()的用法_Mcrypt函数
  • PHP:imagecolorresolve()的用法_GD库图像处理函数
  • 银行转来委托收款
  • 土地增值税清算全流程实战案例
  • 梅萨维德国家公园特点
  • 企业新产品销售收入数据
  • input 文件
  • hive dt
  • 猿创征文,宝藏工具篇
  • python类 方法
  • mongodb视频教程
  • 一张记账凭证写不下时合计怎么写
  • 技术服务费怎么收合理
  • 残保金如何做会计分录
  • 收回以前年度的应收账款较多能说明什么呢?
  • 厂房鉴定费的账户是什么
  • 预付工程款该怎么记账
  • 上期留抵税额可以留多久
  • 企业相关成本费用有哪些
  • 政府给的专款专用的补助,怎么入账
  • 收到销项负数发票怎么做分录
  • 负数发票要交税吗
  • 会计中结转属于什么科目
  • 货币资金核算制度是什么
  • windows update要禁用吗
  • Linux系统怎么调整屏幕亮度
  • bios的含义
  • windows资源管理器
  • win7输入法图标不见了怎么恢复正常
  • keyemain.exe是什么
  • 照相机文件名
  • Win7系统打开蓝牙
  • dos命令语法
  • python中判断数值类型
  • cocos2dx引擎优化
  • js时间计算相减
  • Javascript this 函数深入详解
  • jquery点击移动div
  • javascript高级程序设计电子书
  • android javascript 混淆配置。
  • shell脚本cut -d
  • onInterceptTouchEvent onTouchEvent 的坑 坑死了
  • frontpage网页表单
  • js实现继承的几种方式详述(推荐)
  • 委托代销清单怎么写
  • 上海餐饮增值税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设