mysql8 日志恢复数据

这篇博客介绍了如何恢复MySQL中被误删的数据。首先需要确定数据删除的时间段,然后通过`show master logs`命令查看binlog日志。接着,使用`mysqlbinlog`工具结合时间范围导出具体SQL。在执行SQL文件恢复数据时需要注意编码问题,避免出现错误。最后,确认数据已成功恢复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、需要回想下,数据删除是在哪个时间段删除的,如果不记得时间,也可以通过日志进行查看,但是日志里面可能会很多,一般记得时间段较好。

2、进入数据库,执行命令

mysql> show master logs;
+---------------+-----------+
| Log_name      | File_size |
+---------------+-----------+
| binlog.000549 |  16469845 |
| binlog.000550 |       548 |
| binlog.000551 |  25141557 |
| binlog.000552 |    129388 |
| binlog.000553 | 229002085 |
| binlog.000554 |   1861087 |
| binlog.000555 |   9800931 |
| binlog.000556 |    699599 |
| binlog.000557 |   3463175 |
| binlog.000558 |       155 |
| binlog.000559 |       506 |
| binlog.000560 |       510 |
| binlog.000561 |       504 |
| binlog.000562 |     96808 |
| binlog.000563 | 477599552 |
| binlog.000564 |    163718 |
| binlog.000565 | 285409598 |
| binlog.000566 |       536 |
| binlog.000567 | 238734151 |
| binlog.000568 | 179387191 |
| binlog.000569 | 130409865 |
| binlog.000570 | 101086164 |
| binlog.000571 | 445065837 |
+---------------+-----------+
23 rows in set (0.33 sec)

mysql> 

3、查看具体的日志列表,锁定删除数据之前的日志在哪个日志里面,通过时间来判断

4、 mysql8 bin 目录下面没有 mysqlbinlog ,此时可以借用phpstudy_pro 方便安装一个mysql5 在mysql5 的bin 目录下面有mysqlbinlog .

5、进入mysqlbinlog.exe 所在的目录下面,执行命令 

windows

mysqlbinlog --no-defaults --database=
artsexam --start-datetime="2022-04-01 00:00:00" --stop-datetime="2022-04-12 18:0
2:00" E:\phpstudy_pro\Extensions\MySQL8.0.12\data\binlog.000030 >E:\11.sql


linux 


/etc/env/mysql/bin/mysqlbinlog --no-defaults -d achievements --start-datetime="2022-05-01 00:00:00" --stop-datetime="2022-05-12 21:00:00"  /etc/env/mysql/data/binlog.000002 > /kezhuan/33.sql;

6、注意编码问题 

--no-defaults  参数可以忽略这个编码问题,这个时候打开转换出来的sql文件,否则会报错如下

unknown variable 'default-character-set=utf8'

7、sql文件内容如下

 8、如果第五步加了这个参数-- base64-output=decode-rows -v

9、执行sql文件

source E:\11.sql

10、查看数据已恢复了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值