微笑如一
首页 网络收藏 分解查字

相关: 相似查询
浏览:170
内容:
MySQL binlog的三种工作模式
1、Row level
   日志中会记录每一行数据被修改的情况,然后在slave端对相同的数据进行修改。
  优点:能清楚的记录每一行数据修改的细节
  缺点:数据量太大
2、Statement level(默认)
  每一条被修改数据的sql都会记录到master的bin-log中,slave在复制的时候sql进程会解析成和原来master端执行过的相同的sql再次执行
  优点:解决了 Row level下的缺点,不需要记录每一行的数据变化,减少bin-log日志量,节约磁盘IO,提高新能
  缺点:容易出现主从复制不一致
3、Mixed(混合模式)
  结合了Row level和Statement level的优点

MySQL企业binlog模式的选择
1、使用MySQL的功能较少(不用存储过程、触发器、函数),选择默认的Statement level
2、使用MySQL的特殊功能(存储过程、触发器、函数)则选择Mixed模式
3、使用MySQL的特殊功能(存储过程、触发器、函数),又希望数据最大化一致则选择Row模式

常用binlog日志操作命令
1、查看所有binlog日志列表
   mysql> show master logs;

2、查看master状态,即最后(最新)一个binlog日志的编号名称,及其最后一个操作事件pos结束点(Position)值
   mysql> show master status;

3、刷新log日志,自此刻开始产生一个新编号的binlog日志文件
   mysql> flush logs;
   注:每当mysqld服务重启时,会自动执行此命令,刷新binlog日志;在mysqldump备份数据时加 -F 选项也会刷新binlog日志;

4、重置(清空)所有binlog日志
   mysql> reset master;


查看某个binlog日志内容
A.查询第一个(最早)的binlog日志:
    mysql> show binlog events\G; 
    
B.指定查询 mysql-bin.000021 这个文件:
    mysql> show binlog events in 'mysql-bin.000021'\G;

C.指定查询 mysql-bin.000021 这个文件,从pos点:8224开始查起:
    mysql> show binlog events in 'mysql-bin.000021' from 8224\G;

D.指定查询 mysql-bin.000021 这个文件,从pos点:8224开始查起,查询10条
    mysql> show binlog events in 'mysql-bin.000021' from 8224 limit 10\G;

E.指定查询 mysql-bin.000021 这个文件,从pos点:8224开始查起,偏移2行,查询10条
    mysql> show binlog events in 'mysql-bin.000021' from 8224 limit 2,10\G;
   
   
参考:
MySQL Binlog详解
https://www.cnblogs.com/xhyan/p/6530861.html
MySQL的binlog日志
https://www.cnblogs.com/martinzhang/p/3454358.html

联系: web@xiaoruyi.cn