binlog
记录
SQL 语句
- DDL (Data Definition Languag 数据定义语言) 语句
除了 select 的 DML (Data Manipulation Language 数据操纵语言) 语句
消耗时间
时间戳
- 持续时间
模式
- statement
- 每条修改数据的 sql 语句会记录到 binlog 中
- 优点
- 日志文件体积小
- 节省 I/O 和存储资源
- 集群节点同步速度快
- 缺点
- 某些函数和主键自增长会出现同步数据不一致
- PXC 集群是 Galera library,仅支持 row 模式
- row
- 每条记录的变化都会写到 binlog 中 (默认)
- 优点
- 清晰的记录每条记录的细节
- 数据同步安全可靠
- 同步时出现行锁的更少
- 缺点
- 日志体积太大,浪费存储空间
- 数据同步频繁、速度慢
- mixed
- 普通操作使用 statement 格式,同步可能会出现问题的操作会使用 row 格式
文件类型
- 日志文件
- 后缀为顺序数字编号
- 索引文件
- 后缀为
index
- 后缀为
设置
my.ini
中进行设置[mysqld]
# binlog 模式
binlog_format=row
# 开启 binlog,并且设置 binlog 日志名称
log_bin=mysql_bin
查看
- mysql 中键入
show master logs; # 查看 binlog 索引文件,内容其实就是 binlog 日志文件名称列表 show binlog events in ‘mysql_bin.000060’; # 查看指定的 binlog 日志文件