二十三、二进制日志事件

事件

二进制日志的最小记录单元

DDL语句跟DML语句日志记录方式

#对于DDL语句,一条sql语句即为一个事件
create database oldguo;  #事件1

#对于DML语句,一个事务包含多个语句,每个语句称为一个事件
begin;   #事件1
a语句 	 #事件2
b语句	 #事件3
commit;  #事件4 

查看二进制日志事件

作用:方便我们从日志中截取我们想要的日志事件进行数据恢复

Pos:事件开始号码
End_log_pos:事件结束号码

#先创建一个数据库,表,插入数据
mysql> create database binlog charset utf8mb4;
mysql> use binlog
mysql> create table t1(id int);
mysql> insert into t1 values(1);

#查看二进制日志事件命令
mysql> show binlog events in 'mysql-bin.000004';
mysql> show binlog events in 'mysql-bin.000004' limit 5;


注意:未提交的事务是不会记录到二进制日志中的;
一个事务包含了多个事件,所以截取一个事务需要从566开始,758结束;
这是因为事务具有原子性,一个完整的事务是从begin到commit提交。

学习来自:老男孩深标DBA课程 第六章 日志管理

posted @ 2021-03-14 11:26  努力吧阿团  阅读(73)  评论(0编辑  收藏  举报