【文档】一、Mysql Binlog概述
Binlog是一系列日志文件,他们包含的内容是Mysql数据内容的改变。如果想开启binlog功能,需要在启动时带上--log-bin参数。
binlog是从Mysql3.23.14版本开始的。它包含所有更新数据的sql语句。它还包含可能更新数据的语句(比如,删除不存在的数据行的语句),除非日志的记录是以基于行的。sql语句是以描述修改的事件形式存储的。binlog也包含每个语句的执行时间。
binlog还包含其他的一些源数据,比如:
- 语句执行时,服务器的状态信息,以便用于正确的重新成功执行语句
- 错误码
- 为了维持binlog文件的连续性所需要的元数据(比如,rotate事件)
binlog文件是服务器在执行sql语句过程中整体状态的情况跟踪。它包含的事件描述了状态的变化。更精确的是,binlog事件描述的事件可以被用来重现服务器当时的状态改变。
binlog文件有两个重要的目的:
- 为了主从复制,binlog文件是master服务器记录的,会被发送给slave服务器。很多binlog的格式细节和处理是用于这个目的的。master服务器发送binlog文件中的事件给slave服务器,然后slave服务器执行这些事件,最终达到的目标就是保证slave服务器的数据变化与master一致。slave服务器在执行这些事件之前,会把这些事件存储在本地的relay log中。relay log的格式与binlog一样。
- 某些数据恢复操作需要使用binlog。在备份文件恢复后,binlog中的事件会重新执行。这些事件会让数据库的数据回到备份时间点。
目前有两种类型的binlog:
- 基于语句的:包含sql语句的事件(insert、update、delete)
- 基于行的:描述每一行的数据变化的事件
混合的日志默认使用的是基于语句的记录方式,在必要时会切换到基于行的记录方式。基于行的记录方式从Mysql 5.1版本开始支持。
mysqlbinlog工具可以把binlog或者relay log日志以可读的方式打印出来。
【文档】一、Mysql Binlog概述的更多相关文章
- 部署openstack的官网文档解读mysql的配置文件
部署openstack的官网文档解读mysql的配置文件(使用与ubutu和centos7等系统) author:headsen chen 2017-10-12 16:57:11 个人原创,严禁转载 ...
- PHP实例:使用PHPExcel导入Excel2003文档和Excel2007文档到MySQL数据库中
如果要使用phpExcelReader将Excel 数据导入到mysql 数据库,请读者点击这个文章查看. 使用phpExcelReader将Excel 数据导入到mysql 数据库. 下面我们介绍另 ...
- Android文档 - 账户管理器概述
账户管理器概述 这个类提供了访问到 用户在线账户的集中式注册中心 的能力.用户为每账户输入一次 认证信息(credentials,包含用户名和密码),过过 点击一次(one-click)完成认证的方式 ...
- mysql官网文档调试MYSQL资料 5.7
http://dev.mysql.com/doc/refman/5.7/en/debugging-server.html
- 数据库官方在线文档列表(mysql, postgreSQL)
1. mysql http://dev.mysql.com/doc/ 2. postgreSQL https://www.postgresql.org/docs/
- java读取Excel文档插入mysql
/** * 读取excel插入myslq */package com.excel; import java.io.BufferedInputStream;import java.io.File;imp ...
- 阅读阿里文档总结————Mysql数据库篇
一:建表规范 1.针对于任何字段如果为非负数,必须是 unsigned: 2.表达逻辑删除的字段名 is_deleted,1 表示删除,0 表示未删除: (1为是:0为否) 3.主键索引名为 pk_字 ...
- Spring Boot文档
本文来自于springboot官方文档 地址:https://docs.spring.io/spring-boot/docs/current/reference/html/ Spring Boot参考 ...
- 带你了解 MySQL Binlog 不为人知的秘密
MySQL 的 Binlog 日志是一种二进制格式的日志,Binlog 记录所有的 DDL 和 DML 语句(除了数据查询语句SELECT.SHOW等),以 Event 的形式记录,同时记录语句执行时 ...
随机推荐
- (转)C# .net微信开发,开发认证,关注触发消息,自动应答,事件响应,自定义菜单
原文地址:http://www.cnblogs.com/qidian10/p/3492751.html 成为开发者 string[] ArrTmp = { "token", Req ...
- (二分搜索 )Strange fuction -- HDU -- 2899
链接: http://acm.hdu.edu.cn/showproblem.php?pid=2899 Time Limit: 2000/1000 MS (Java/Others) Memory ...
- 23 DesignPatterns学习笔记:C++语言实现 --- 1.3 Singletion
23 DesignPatterns学习笔记:C++语言实现 --- 1.3 Singletion 2016-07-21 (www.cnblogs.com/icmzn) 模式理解
- 【StatLearn】统计学习中knn算法的实验(1)
Problem: Develop a k-NN classifier with Euclidean distance and simple voting Perform 5-fold cross va ...
- Android下拉刷新控件android-Ultra-Pull-To-Refresh 使用
一.gitHub地址及介绍 https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh android-Ultra-Pull-To-Refre ...
- task3:词频统计
相关的类: java.util.regex.Pattern static Pattern compile(String regex) //编译模式 static Pattern compile(Str ...
- SQLSERVER带端口号的链接方式
SQLSERVER带端口号的链接方式 <add key="BBAcnn" value="server=IP,端口号\实例名;database=TESTDB;uid= ...
- Hibernate 之核心接口
1.持久化和ORM 持久化是指把数据(内存中的对象)保存到可持久保存的存储设备中(如硬盘),主要应用于将内存中的数据存储到关系型数据库中,在三层结构中,持久层专注于实现系统的逻辑层面,将数据使用者与数 ...
- Tcp编程常见问题及解决方法总结
问题1.粘包问题 解决方法一:TCP提供了强制数据立即传送的操作指令push,TCP软件收到该操作指令后,就立即将本段数据发送出去,而不必等待发送缓冲区满: 解决方法二:发送固定长度的消息 解决方法三 ...
- Java学习笔记XML(3)
XML简介 XML即可扩展的标记语言.因此该语言中所有的标签都是没有预先定义的,开发者可以自己随意的指定. 目前为止所有的标记的语言都属于开源的语言.由W3C组织进行一个基本的维护. 因此大家学习这些 ...