下面对binlog中事件做个简单说明:

  • UNKNOWN_EVENT

这个事件类型应该永远不会出现。它从不会写入binlog中。如果binlog中的事件没法被识别成其他已知事件,他被当做UNKNOWN_EVENT。

  • START_EVENT_V3

在binlog文件最开始的符号事件(在Mysql的4.0和4.1版本中,这个事件只会在服务启动时,写到第一个binlog文件中)。这个事件在3.23到4.1版本中使用,在5.0版本中被FORMAT_DESCRIPTION_EVENT代替。

  • QUERY_EVENT

当更新操作完成时写入。

  • STOP_EVENT

当mysqld停止时写入。

  • ROTATE_EVENT

当mysqld切换一个新的binlog文件时写入。当FLUSH LOGS命令执行或者当前的binlog文件太大时,这个事件会出现。binlog文件的最大值由max_binlog_size定义。

  • INTVAR_EVENT

当一个语句使用到AUTO_INCREMENT列时,或者LAST_INSERT_ID()函数时写入。在这个语句的其他事件之前写入。这个只在QUERY_EVENT之前写入,并且在基于行的日志中不会使用。这个事件是以下面两种子类型的方式写入的

INSERT_ID_EVENT表示下个语句中使用到的自增列。

LAST_INSERT_ID_EVENT表示下个语句中用到的LAST_INSERT_ID()函数。

  • LOAD_EVENT

在Mysql 3.23中用于LOAD DATA INFILE语句中。

  • SLAVE_EVENT

没使用过。

  • CREATE_FILE_EVENT

在Mysql 4.0和4.1版本中用于LOAD DATA INFILE语句。

  • APPEND_BLOCK_EVENT

在Myql 4.0中用于LOAD DATA INFILE语句。

  • EXEC_LOAD_EVENT

在Mysql 4.0和4.1中用于LOAD DATA INFILE语句。

  • DELETE_FILE_EVENT

在Myql 4.0中用于LOAD DATA INFILE语句。

  • NEW_LOAD_EVENT

在Mysql 4.0和4.1中用于LOAD DATA INFILE语句。

  • RAND_EVENT

当一个语句使用RAND()函数时写入。在这个语句的所有其他事件之前。表示在下个语句中使用RAND()生成随机数用到的种子值。这个只在QUERY_EVENT之前写入,并且在基于行的日志中不记录。

  • USER_VAR_EVENT

一个语句中使用到user变量时写入。在这个语句的所有事件之前。表示在下个语句中使用到的user变量值。这个只在QUERY_EVENT之前写入,并且在基于行的日志中不记录。

  • FORMAT_DESCRIPTION_EVENT

每个binlog文件开头的符号事件。用于Mysql 5.0版本,替代START_EVENT_V3。

  • XID_EVENT

在支持XA事务的存储引擎中,事务提交时产生。普通的事务是这样实现的:发送一个包含BEGIN语句的QUERY_EVENT和一个包含COMMIT语句的QUERY_EVENT(或者当事务回滚时的ROLLBACK语句)

  • BEGIN_LOAD_QUERY_EVENT

用于Mysql 5.0中LOAD DATA INFILE语句。

  • EXECUTE_LOAD_QUERY_EVENT

用于Mysql 5.0中LOAD DATA INFILE语句。

  • TABLE_MAP_EVENT

用于基于行日志记录。这个事件在每个行操作事件之前。他把表定义映射为一个数字,表定义包含库名和表名,还有列的定义。这个事件的目的是当master和slave的同一张表有不同的定义时,允许进行主从复制。属于同一个事务的行操作事件会被按顺序放到一个组中,在这种情况下,每个事件序列组以TABLE_MAP_EVENT事件开头,每张表的序列组有一个。

  • PRE_GA_WRITE_ROWS_EVENT

WRITE_ROWS_EVENT的废弃版本

  • PRE_GA_UPDATE_ROWS_EVENT

UPDATE_ROWS_EVENT的废弃版本

  • PRE_GA_DELETE_ROWS_EVENT

DELETE_ROWS_EVENT的废弃版本

  • WRITE_ROWS_EVENT

用于基于行的日志记录方式,这个事件记录了单表的行插入。

  • UPDATE_ROWS_EVENT

用于基于行的日志记录方式,这个事件记录了单表的行更新。

  • DELETE_ROWS_EVENT

用于基于行的日志记录方式,这个事件记录了单表的行删除。

  • INCIDENT_EVENT

用于记录master上发生的非常规事件。这个事件会通知slave,master发生了一些会导致数据不一致的事件。

  • HEARTBEAT_LOG_EVENT

master发送给slave的事件,让slave知道master还活着。不写入日志文件。

【文档】四、Mysql Binlog事件含义详解的更多相关文章

  1. elasticsearch最全详细使用教程:入门、索引管理、映射详解、索引别名、分词器、文档管理、路由、搜索详解

    一.快速入门1. 查看集群的健康状况http://localhost:9200/_cat http://localhost:9200/_cat/health?v 说明:v是用来要求在结果中返回表头 状 ...

  2. ElasticSearch 文档(document)内部机制详解

    1.数据路由 1.1 文档存储怎么路由到相应分片? 一个文档,最终会落在主分片的一个分片上,到底应该在哪一个分片?这就是数据路由. 1.2 路由算法 shard = hash(routing) % n ...

  3. PDF文档工具:pdfFactory快照功能详解

    pdfFactory的快照功能,是通过一种类似截图的方式,将文档中的内容,如标题.图片.段落.文字等进行剪切的功能.剪切后的内容会转化为文本框的形式,我们可以对其进行加边框.旋转等编辑处理,但不能对其 ...

  4. MySQL binlog日志操作详解

    MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型的. bi ...

  5. 环境搭建文档——Windows下的Git搭建详解

    Git是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理.具体安装步骤如下: 第一步:先从官网下载最新版本的Git 官网地址:https://git-scm.com/do ...

  6. 中文翻译:pjsip文档(四)之ICE Session的使用方法

    1:pjsip教程(一)之PJNATH简介 2:pjsip教程(二)之ICE穿越打洞:Interactive Connectivity Establishment简介 3:pjsip教程(三)之ICE ...

  7. 部署openstack的官网文档解读mysql的配置文件

    部署openstack的官网文档解读mysql的配置文件(使用与ubutu和centos7等系统) author:headsen chen  2017-10-12 16:57:11 个人原创,严禁转载 ...

  8. DOM事件类型详解

    一.表单事件: input事件当<input>.<textarea>的值发生变化时触发.此外,打开contenteditable属性的元素,只要值发生变化,也会触发input事 ...

  9. mysql学习3:mysql之my.cnf详解

    mysql之my.cnf详解 本文转自:https://www.cnblogs.com/panwenbin-logs/p/8360703.html 以下是 my.cnf 配置文件参数解释: #*** ...

随机推荐

  1. windows下C++操作MySQL数据库

    .安装MySQL 2.建立C++控制台程序,新建CPP源文件,如:sqlconn.cpp 3.工程项目中属性—C/C++--常规—附加包含目录中添加mysql安装目录中的MySQL\MySQL\MyS ...

  2. SQL编程:group by合并结果字符串 ---> group_concat函数就能行

    1.表结构 create table tt(id int,v varchar(30));              insert into tt values(1,'a'),(1,'b'),(2,'b ...

  3. java程序无法启动:Unsupported major.minor version 51.0

    今天在sae上部署了一个项目,结果总是出现503错误:service unavailable,然后jvm出现了一大串错误日志,如下 JAVA_SAE_Fatal_error: Failed start ...

  4. Android各国语言Values文件夹命名规则

    android多国语言文件夹文件汇总如下: 中文(中国):values-zh-rCN 中文(台湾):values-zh-rTW 中文(香港):values-zh-rHK 英语(美国):values-e ...

  5. Python学习-14.Python的输入输出(三)

    在Python中写文件也是得先打开文件的. file=open(r'E:\temp\test.txt','a') file.write('append to file') file.close() 第 ...

  6. 四.Jenkins的授权和访问控制

    默认的Jenkins不包含任何的安全检查,任何人可以修改Jenkins设置,job和启动build等.在多人使用的时候,显然会存在比较大的安全风险,所以需要配置Jenkins的授权和访问控制. [系统 ...

  7. .Net 数据缓存浅析

    目录 1场景出发 1.1数据请求 1.2优化改进 2缓存 3缓存进阶 3.1缓存清除 3.2有效性 3.3线程安全 4适用场景和优劣 4.1适用场景 4.2优劣 5结语 1场景出发 1.1数据请求 小 ...

  8. JgrId 无数据返回设置

    在addJSONData方法中 while (i < len) { 前增加以下代码 ) { rowData.push('<tr role="row" id=" ...

  9. layui json数据格式要求

    layui  数据格式要求 layui有自己的一套特定的数据格式交互(这很重要),必须参数code:0,msg:“”,count:数据size(int),data:”数据List”.一般我们选择封装返 ...

  10. String,Json,Map之间的转化

    前提条件: 1)String的格式是map或json类型的 ; 2)在JAVA中使用JSON需要引入 org.json 包 String >>Json JSONObject jsonObj ...