本教程目的在于,你的MYSQL采用了binlog日志,且产生了binlog日志文件,使用日志文件恢复数据。

步骤一、找到要恢复数据的binlog文件

怎么找?使用命令:show variables like '%log_bin%';

如下图:这个路径就是你的binlog日志的文件夹

如下图:可能存在好多个 binlog日志文件,例如:binlog.000013

有些教程里,文件名也可能是这样的:mysql-bin.000001

步骤二:把日志文件导出为.sql文件

这里提醒:最好不要执行命令查看内容:show binlog EVENTS in 'binlog.000019';

因为文件太大的话,可能有上亿条数据...

导出命令有两种,一种根据 事务区间导出,一种根据日期区间导出

事务区间:--start-position=573 --stop-position=718

日期区间:--start-datetime="2022-08-10 9:16:59" --stop-datetime="2022-08-13 5:06:48"

事务区间导出命令:

mysqlbinlog --no-defaults --start-position=1525059 --stop-position=1525612 C:\mysql\Data\binlog.000013 -d 数据库名 > d:\test_pot.sql

日期区间导出命令:

mysqlbinlog --no-defaults --start-datetime="2022-08-10 9:16:59" --stop-datetime="2022-08-13 5:06:48" C:\mysql\Data\binlog.000013 -d 数据库名> d:\test.sql

怎么执行命令呢?不要进入mysql中执行,这个是依赖mysql\bin\mysqlbinlog.exe来运行的。

如下图:

导出后文件格式具体如下:

步骤三、执行导出的恢复文件test.sql

怎么执行命令呢?这个要命令行登录mysql执行。

登录mysql命令:mysql -h localhost -u root -p,输入密码

进入mysql后,切换数据库

最后执行恢复命令:source C:\Users\E590\Desktop\test.sql (第二步导出的.sql文件)

等待执行完成。然后就会发现,你的数据回来了。

注意事项:

  • 1、第二步在导出恢复数据test.sql文件时、一定不能在命令中加 --base64-output=decode-rows

加上后,导出的sql文件执行了也不能恢复。这种导出的更方便我们用来分析,恢复那段时间区间或者事务区间的内容。

下面两种图同一个时间段、同一个事务点的展示如下

加  --base64-output=decode-rows 导出的文件示例:

不加  --base64-output=decode-rows 导出的文件,执行后可恢复数据,示例:

上面两图,

第一张加上--base64-output=decode-rows导出的,我们可以用来分析,决定恢复哪些时间段内的,或者哪些 事务区间段内的。这样就能找到 第二步的 开始时间 结束时间 或者事务区间 的开始事务节点,结束事务节点。

在分析好 区间以后,再次不加--base64-output=decode-rows导出的,用来执行恢复。

  • 2、执行导出命令后,可能有如下提示,可以忽略不用管。

WARNING: The range of printed events ends with a row event or a table map event that does not have the STMT_END_F flag set. This might be because the last statement was not fully written to the log, or because you are using a --stop-position or --stop-datetime that refers to an event in the middle of a statement. The event(s) from the partial statement have not been written to output.

MYSQL使用binlog日志恢复数据相关推荐

  1. Mysql基于binlog日志恢复数据

    Mysql基于binlog日志恢复数据 1.Linux安装mysql https://blog.csdn.net/qq_44981526/article/details/126717005 可能遇到的 ...

  2. Mysql 通过 binlog日志 恢复数据(数据搞丢看过来)

    1.查看binlog是否开启 #查看binlog是否开启 show variables like '%log_bin%'; 2.锁表,防止数据被污染(可根据需求,不阻塞业务的情况) #锁表,防止数据被 ...

  3. mysql日志恢复数据_Mysql 通过binlog日志恢复数据

    Binlog日志,即binary log,是二进制日志文件,有两个作用,一个是增量备份,另一个是主从复制,即主节点维护一个binlog日志文件,从节点从binlog中同步数据,也可以通过binlog日 ...

  4. MySQL 之binlog日志说明及利用binlog日志恢复数据操作记录

    众所周知,binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷! 一 ...

  5. MySQL二进制binlog日志说明以及利用binlog日志恢复数据

    MySQL的binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全量备份+binlog日志恢复增量数据部分). 一.关于 ...

  6. binlog是什么?能做什么?Window下怎么开启binlog?怎么查看binlog日志?利用binlog日志恢复数据

    binlog是什么?能做什么?Window下怎么开启binlog?怎么查看binlog日志?利用binlog日志恢复数据 windows如何开启Binlog日志 文档来源 ##1.什么是Binlog日 ...

  7. mysql使用二进制日志恢复数据

    本文来说下如何使用mysql使用二进制日志恢复数据,再window的环境下. 文章目录 开启二进制日志 重启mysql服务 配置信息 开启二进制日志 在mysqld的配置节点下添加如下配置 log_b ...

  8. Canal监听mysql的binlog日志实现数据同步

    Canal监听mysql的binlog日志实现数据同步 1. canal概述 1.1 canal简介 1.2 技术选型 1.3 原理分析 1.3.1 MySQL主备复制原理 1.3.2 canal原理 ...

  9. 使用MySQL的binlog日志恢复误删数据

    使用binlog日志恢复误删数据 1.查看binlog是否开启并锁表 # 进入mysql mysql -uroot -proot#查看binlog是否开启 show variables like '% ...

最新文章

  1. 一台台式计算机的主要配件有哪些,电脑的基本配件有哪些
  2. C++, C#, Java, VB.NET,到底该选择哪一门语言?
  3. /opt/hbase/conf 中不能启动hbase_浅谈Hbase在用户画像上的应用
  4. mysql 实例启动利用binlog恢复_mysql利用binlog进行数据恢复
  5. einops和einsum:直接操作张量的利器
  6. 神经网络代码解读_强化学习、联邦学习、图神经网络,飞桨全新工具组件详解...
  7. [机器学习]关联挖掘算法Apriori和FP-Growth以及基于Spark 实例
  8. educoder MongoDB 复制集 分片
  9. delphi 创建一个纯文本文件
  10. ADS仿真 之 交流仿真和S参数仿真示例
  11. java 验证码识别_【Java】验证码识别解决方案
  12. WPF--->Stylet将TextBox修改为圆角
  13. Python-Cartopy制图学习02-中国2010年5月干旱情况空间制图
  14. php laravel日志报错,Laravel 文档阅读:错误 日志记录
  15. G1D5-Intriguing properties of neural networks
  16. Centos文件上传,并用Compose, Dockerfile部署容器
  17. 华为5g鸿蒙麒麟,华为5G手机渲染图曝光,鸿蒙+麒麟985+5G基带,参考价格很良心...
  18. 孙俊 计算机技术资格水平考试,孙俊 - 专家学者 - - 计算机科学与技术 - 中南大学 - 学科服务平台...
  19. deepin Picked up _JAVA_OPTIONS
  20. 我们调查了400多位业余摄影家,想搞清楚大爷大妈们的“拍大片江湖”

热门文章

  1. iMazing高效便捷的数据转移功能
  2. 普通人学python前景如何 有没有用
  3. 拼多多2018年秋招提前批
  4. 超级实用地道美式口语(1)
  5. java PDF加印章
  6. Adobe Flex的十大误解
  7. 电魂网络2018年营收达4.48亿元 同比下降10.19%
  8. 2.2 Go语言中的布尔型和整型
  9. 将体育融入元宇宙,TopGoal 为 Web3 带来新体验
  10. 关于PADS铺铜时,相同网络的GND焊盘不能和GND铜皮连接的解决方法