zoukankan      html  css  js  c++  java
  • binlog配置和使用

    binlog启用和禁用
    在/etc/my.cnf文件中添加log-bin=mysql-bin来启用binlog,mysql-bin为日志文件名前缀。
    如果用户有super权限,可通过set sql_log_bin=1/0来启用或禁用当前会话的binlog记录。

    binlog的设置
    A: binlog_do_db=dbname设置只记录dbname库的二进制日志,如果有多个则添加多行即可。
    B: binlog_ignore_db=dbname设置不记录dbname库的二进制日志,如果有多个则添加多行即可。
    C: binlog_format=mixed 综合了statement和row的优点,默认即为此值。
    D: binlog_cache_size 使用内存的大小,默认为32KB。
    E: max_binlog_cache_size 使用内存的最大尺寸。
    F: max_binlog_size 日志的最大值和默认值是1GB
    G: sync_binlog=0 这个参数直接影响mysql的性能和完整性,当事务提交后,mysql仅是将
    binlog_cache中的数据写入binlog文件,但不执行fsync之类的硬盘,这时性能是最好的,
    但是风险也是最大的,一旦系统crash,在文件系统缓存中的所有binlog信息都会丢失。

    当使用事务的表存储引擎时,所有未提交的二进制日志会被记录到一个缓存中,
    等该事务提交时直接将缓存中的二进制日志写入二进制日志文件。
    使用SHOW GLOBAL STATUS查看下面两项的值,根据它们来调整binlog_cache_size的值
    binlog_cache_use 记录了使用缓存写二进制日志的次数
    binlog_cache_disk_use 记录了使用临时文件写二进制日志的次数

    binlog的查看
    mysqlbinlog binlog-file-name

    binlog的删除
    A:自动删除
    show variables like 'expire_logs_days';
    set global expire_logs_days=3;
    B:手动删除
    reset master or reset slave 清除所有日志
    purge master logs before '2014-05-30 14:45:00' 删除指定日期以前的日志
    purge master logs to 'mysql-bin.000001' 删除指定的日志文件


    按照手册上的说法,
    把--innodb-support-xa设置为1,同时保证sync_binlog=1,才能保证innodb的binlog和数据一致

  • 相关阅读:
    Codeforces 451A Game With Sticks
    POJ 3624 Charm Bracelet
    POJ 2127 Greatest Common Increasing Subsequence
    POJ 1458 Common Subsequence
    HDU 1087 Super Jumping! Jumping! Jumping!
    HDU 1698
    HDU 1754
    POJ 1724
    POJ 1201
    CSUOJ 1256
  • 原文地址:https://www.cnblogs.com/zxpo/p/3761211.html
Copyright © 2011-2022 走看看