mysql bin_log日志恢复数据

1、开启bin_log日志

开启方式1 my.ini 下配置开启或者vi /etc/my.cnf

log_bin=mysql-bin
server_id=1

2、参考文章

https://blog.csdn.net/DreamEhome/article/details/130010601 (重点)

【mysql】binlog日志_mysql binlog日志-CSDN博客

MySQL 开启binlog日志和windows服务操作_mysql开启binlog日志 service id-CSDN博客

开启MySQL的binlog日志_mysql开启binlog日志_IT光的博客-CSDN博客

#查看日志开启状态 
show variables like 'log_%';
#查看所有binlog日志列表
show master logs;
#查看最新一个binlog日志的编号名称,及其最后一个操作事件结束点 
show master status;
#刷新log日志,立刻产生一个新编号的binlog日志文件,跟重启一个效果 
flush logs;
#清空所有binlog日志 
reset master;
show binlog events;

3、开始测试

创建数据库和表并插入数据

create database test;
use test;
CREATE TABLE `testuser` (
  `id` int(11) NOT NULL,
  `name` varchar(255) DEFAULT NULL,
  `age` decimal(18,2) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
 
insert  into `testuser`(`id`,`name`,`age`) values (1,'张三',24.00);

drop database test;

查询bin_log日志mysqlbinlog -v mysql-bin.000001

bin_log日志生成sql语句

mysqlbinlog --set-charset=utf-8 --base64-output=DECODE-ROWS -v mysql-bin.000001>backuptmp.sql

mysql日志文件General_log和Binlog开启及详解_Mysql_脚本之家 (jb51.net)

恢复数据 数据中的 at就是位置通过开始位置和结束位置就可以恢复数据

mysqlbinlog -v mysql-bin.000001 --start-position=219 --stop-position=777 | mysql -uroot -ppyrx123

mysql-bin.000001  要操作binlog文件

--start-position=219                      数据恢复的起始位置

--stop-position=982                      数据恢复的结束位置

mysql -uroot -p123456                 数据恢复需要登录数据库
 

你可能感兴趣的:(mysql,数据库)