当前位置: 首页 > news >正文

利用binlog2sql数据闪回实战

目录

  • 前言
  • 准备
  • 查看被删除的数据
  • 回滚
  • 可能遇到的问题
    • 引号问题
    • 回滚数据字段错位
  • 小结
  • 参考

前言

  • 常与数据库打交道,难免遇到误删或误修改数据的情况,本文使用binlog2sql实现数据回滚的操作。虽说这款工具许久未更新,好在binlog这种底层的东西没什么变化,依旧能用。

准备

  • 开启binlog
    在这里插入图片描述

  • 查看binlog_format格式,binlog2sql要求必须是ROW
    在这里插入图片描述

  • 克隆源码

git clone git@github.com:danfengcao/binlog2sql.git
  • 运行环境,我使用conda创建python 3.5的环境
conda create -n binlog python=3.5
  • 安装依赖
 pip install -r requirements.txt
  • t_user表测试数据2条
    在这里插入图片描述

  • 删除数据

DELETE FROM `t_user`;

在这里插入图片描述

查看被删除的数据

  • 查看现在的binlog文件名
show MASTER STATUS;

在这里插入图片描述

  • 运行命令
python binlog2sql/binlog2sql.py -h127.0.0.1 -P3306 -uroot -proot -dtest -tt_user   --start-file=binlog.000095 --start-datetime="2025-11-09 16:58:00" --stop-datetime="2025-11-10 00:00:00"

部分参数解释: -d 库名 -t 表名

在这里插入图片描述

回滚

  • 运行命令生成SQL文件
python binlog2sql/binlog2sql.py -h127.0.0.1 -P3306 -uroot -proot -dtest -tt_user --start-file=binlog.000095 --start-position=1813 --stop-position=2116 -B > rollback.sql

部分参数解释: --start-position 与前面看到的#start 1813 对应 , --stop-position 同理

在这里插入图片描述
在这里插入图片描述

  • 把回滚语句执行一遍数据就回来了。
    在这里插入图片描述
    在这里插入图片描述

可能遇到的问题

引号问题

  • binlog2sql文档里面使用的命令是单引号,实际上我在Windows 10要使用双引号。例如 --start-datetime="2025-11-09 16:58:00"

回滚数据字段错位

  • 比如name字段对应到了email字段,我在mysql 8某些版本有遇到这个问题。
  • 解决方案
pip install  pymysql==0.9.3
pip install mysql-replication==0.21

小结

  • 先找到binlog文件名,然后执行命令找到误操作的语句,再得到回滚SQL。另外,删除表后无法回滚。

参考

  • https://www.bilibili.com/video/BV1UY411U74g/
  • https://github.com/danfengcao/binlog2sql
  • https://github.com/danfengcao/binlog2sql/issues/64
http://www.dtcms.com/a/589163.html

相关文章:

  • 东莞网站建设曼哈顿信科网站建设的总体设计概图
  • 算法:矩形区域不超过k的数值和
  • 算法30.0
  • 算法基础篇:(四)基础算法之前缀和
  • Nginx优化与防盗链
  • Vue-vuex 核心概念和 API
  • 分治归并算法第一弹
  • 【数据结构】哈夫曼树技术详解:原理、算法与应用
  • 贵阳网站备案在哪里网站红色
  • 个人网站公司网站区别经营区别数字货币怎么推广赚钱
  • 3GPP 各主要 Release(版本)及其发布时间和主要内容
  • RK3588同时硬解和GPU绘制16路1080P/通用其他RK系列板子/嵌入式监控系统/支持国产硬件和系统
  • BB ACS355变频器家装EMC电源滤波安装与使用指南
  • ARMV9.7 FEAT_SME2p3 视频编解码器新增指令扩展
  • 基础开发工具(下)
  • 一文详解分布式事务
  • HarmonyOS DataShareExtension深度解析:构建安全高效的数据共享架构
  • 团风做网站网站建站前期准备工作
  • .net 网站开发架构企业网站设置
  • 面试题 16.25. LRU 缓存
  • st表详解
  • 企业网站优化甲薇g71679做同等效果下拉词做网站白云
  • 9、webgl 基本概念 + 复合变换 + 平面内容复习
  • gRPC C++库架构与异步编程实践
  • 做网站如何收益发送wordpress
  • 人工智能备考——4部分总结
  • Vite.js 快速入门指南 (React + JavaScript 版)
  • 如何建微信商城网站wordpress手机模板
  • 基于springboot纺织品企业财务管理系统【带源码和文档】
  • CHAR、VARCHAR、TEXT 的差别与存储方式