zoukankan      html  css  js  c++  java
  • 2.5.2 MySQL二进制日志介绍

    MySQL二进制日志介绍

    什么是 binary log

    这个文件记录了mysql数据库所有的DDL和DML(除了数据查询语句 select)语句事件。用来记录数据库中发生的修改情况。
    比如:数据的修改、表的创健建及修改等。

    它既可以记录涉及修改的SQL,也可以记录数据修改的行变化记录,同时也记录了执行时间。
    比如:
    执行sql:update itpux set name='a' where id between l and 5
    修改了5行记录

    binlog 日志有两个最重要的使用场景

    1) MySQL主从复制:
    MySQL Replication 在 Master 端开启 binlog, Master把它的二进制日志传递给 slaves来达到 master-slave 数据一致的目的。
    2)数据恢复
    通过使用 mysqlbinlog工具来使恢复数据;
    数据库宕机恢复使用;
    异常操作,紧急恢复数据使用;

    MySQL binlog的三种工作模式

    (1) Row level
    日志中会记录每一行数据被修改的情况,然后在slave端对相同的数据进行修改。
    (2) Statement level(默认)
    每一条被修改数据的sql都会记录到 master的bin-log中,slave在复制的时候sql进程会解析成和原来master端执行过的相同的sql再次执行
    (3) Mixed(混合模式)
    结合了 Row level和 Statement level的优点

    设置 MySQL binlog模式

    查看 MySQLbinlog模式
    mysql> show variables like "binlog%";
    binlog_format    ROW
    vi my.cnf
    binlog_format= 'ROW'
    or
    binlog_format='STATEMENT'
    or
    binlog_format='Mixed'











      



  • 相关阅读:
    bat脚本%cd%和%~dp0的区别
    java测试程序运行时间
    != 的注意事项
    [转载] iptables 防火墙设置
    .NET 创建 WebService
    [转载] 学会使用Web Service上(服务器端访问)~~~
    cygwin 安装 apt-cyg
    在Element节点上进行Xpath
    Element节点输出到System.out
    [转载] 使用StAX解析xml
  • 原文地址:https://www.cnblogs.com/wenyule/p/13710961.html
Copyright © 2011-2022 走看看