Mysql-主从-binlog-格式,参数(三)
日志格式
-
ROW:
基于【数据行】的模式,就是把所有变化的数据记录下来:
成都创新互联公司作为成都网站建设公司,专注重庆网站建设、网站设计,有关成都定制网站方案、改版、费用等问题,行业涉及墙体彩绘等多个领域,已为上千家企业服务,得到了客户的尊重与认可。
- 优点: 稳定不会有bug
- 缺点: 日志文件大
-
STATEMENT:
基于【sql语句】的模式,就是把所有的执行的sql语句记录下来
- 优点:日志文件小
- 缺点: 可能会有MySQL版本不同函数执行异常的bug,比如: sleep
-
MIXED
混合模式: 前两种模式的混合,根据具体sql,mysql内部自动选择,而且对【ROW模式】进行了优化
-
查看当前类型:
show variables like 'binlog_format';
-
修改模式-语句模式:
vim /etc/my.cnf binlog_format=STATEMENT
查看binlog内容:
// 普通查看:
mysqlbinlog mysql.bin.0003
// 显示具体执行信息:
mysqlbinlog mysql.bin.0003 -v
// 去掉base64符号:
mysqlbinlog mysql.bin.0003 -v --base64-output=decode
过滤参数
一般不在主上做限制,给从库做限制
#### 参数(my.cnf):
#主库(binlog日志记录过滤):
binlog-do-db #只复制-指定的数据库
binlog-ignore-db #不复制-指定的数据库
#从库(中继日志记录过滤):
replicate_do_db #只复制-指定的数据库
replicate_ignore_db #不复制-指定的数据库
replicate_do_table #只复制-指定的数据表
replicate_ignore_table #不复制-指定的数据表
replicate_wild_do_table #只复制-指定的数据表,使用【通配符】
replicate_wild_ignore_table #不复制-指定的数据表,使用【通配符】
示例配置:
# 1.【从库】,只复制【xh库】,排除掉【user表】
replicate_do_db=xh
replicate_ignore_table=xh.user
# 2.【从库】,只复制【xh库】,排除掉以test开头的表
replicate_do_db=xh
replicate_wild_ignore_table=xh.test%
分享名称:Mysql-主从-binlog-格式,参数(三)
标题来源:http://scyanting.com/article/ijgcgc.html