• mysql事务_34


    redo组成

    redo log buffer

    --innodb_log_buffer

    通畅8M已经足够使用

    redo log file

    --innodb_log_file_size

    --innodb_log_files_in_group

    --innodb_log_group_home_dir

    和数据文件分开

    选择更快的磁盘

    redo llog buffer

    由log block 组成

    每个log block 512kB

    no need doublewrite

    redo log buffer刷新

    master thread 每秒进行刷新

    redo log buffer使用大于1/2进行刷新

    事务提交时进行刷新

    innodb_flush_log_at_trx_commit =  0 1 2

    顺序写

    ib_logfile1写满 重新写ib_logfile0 没有归档

    innodb_flush_log_at_trx_commit =  0:事务提交时不将redo log buffer写入磁盘 最多丢失1秒的事务

    1 提交时将redo log buffer写入磁盘

    2 事务提交时仅将redo log buffer写入操作系统缓存

    哪种性能最好?

    inndb_flush_log_at_trx_commit=2是否会导致事务丢失?

    innodb_flush_log_at_timeout(5.6才有的参数)master thread 秒N秒进行刷新

    组提交:

    一次fsync刷新多个事务

    性能提高10~100多倍

    sysbench update_non_index.lua

    开启binlog后组提交失败

    mariadb5.5解决

    mysql5.6解决

    写入密集型应用

    mysql5.5raid bbu

    不在乎数据一致性可考虑innodb_flush_log_at_trx=2

    redo日志分类

    物理日志:记录整个页的变化(diff)

    逻辑日志:like sql语句

    物理逻辑日志:根据页进行记录,内容逻辑

     doublewrite与redo的关系

    redo 与binlog的区别

    show master status

     show binlog events in  '';

    flush binary logs/flush logs

    query类型的event 就是ddl

     5.7 binlog设置row格式 可以看到sql语句,怎么看?

  • 相关阅读:
    异常练习一 throw
    MAP排序
    Java正则表达式应用详解
    java多线程 sleep()和wait()的区别
    面向对象的15、18位中国大陆身份证号码解析、工具
    java学习笔记--this 关键字的理解
    Java六大问题你都懂了吗?
    Java类的声明和访问介绍
    java的五种数据类型解析
    Java集合框架的总结
  • 原文地址:https://www.cnblogs.com/lvjinping/p/9637135.html
Copyright © 2020-2023  润新知