zoukankan      html  css  js  c++  java
  • 14.2.3 InnoDB Redo Log

    <pre name="code" class="sql"><pre name="code" class="html">14.2.3 InnoDB Redo Log
    
    14.2.3.1 Group Commit for Redo Log Flushing
    
    
    redo log  是一个基于磁盘的数据结构 用于crash recovery到正确的数据(被不完全的事务写入的)
    
    
    在正常操作期间,redo log 可以让查询改变InnoDB表的数据, 由SQL语句或者行级别的API 调用产生。
    
    
    修改没有完成更新数据文件前一个意外的关机被自动重现 在初始化期间,在接收连接前。
    
    
    默认的,redo log 是物理的表现在磁盘上的一组文件, 叫做b_logfile0 and ib_logfile1. 
    
    
    MySQL 写redo log 文件以一个循环的方法。 redo log里的数据是编码成根据改变的行;
    
    
    这些数据是被收集称为redo. 
    
    
    redo log 的磁盘布局使用下面的选项配置:
    
    1.innodb_log_file_size:  定义每个redo log 文件的大小 单位字节,默认redo log 文件是48MB。
    
    log 文件的组合大小是(innodb_log_file_size * innodb_log_files_in_group) 不能超过最大值 512G
    mysql> show variables like '%innodb_log%';
    +-----------------------------+-----------+
    | Variable_name               | Value     |
    +-----------------------------+-----------+
    | innodb_log_buffer_size      | 8388608   |
    | innodb_log_compressed_pages | ON        |
    | innodb_log_file_size        | 536870912 |
    | innodb_log_files_in_group   | 2   
    
    当前数据库redo 文件大小为512M
    
    
    innodb_log_files_in_group:  log group 里的log files 的数目,默认是创建2个文件叫做ib_logfile0 and ib_logfile1.
    
    
    
    innodb_log_group_home_dir: InnoDB log files的目录path.如果你不指定一个指,
    
    
    log 文件会被创建在MySQL 数据目录(datdir)
    
    
    改变你的初始redo log 配置
    
    
    14.2.3.1 Group Commit for Redo Log Flushing   
    
    
    InnoDB, 像任何其他遵循ACID数据库引擎, flushes 事务的redo log 在它提交前,
    
    
    InnoDB 使用group 提交功能 多个flush 请求在一起 以组为单位来避免每个提交都flush.
    
    
    使用group 提交,InnoDB 执行一个单独写 log file 执行提交动作 队伍多个用户事务提交在同一时间,
    
    大大改善性能。


    
    
    
                                        
    
  • 相关阅读:
    Facebook主页照片和封面照片的尺寸要求
    NopCommerce源码架构详解
    Razor语法大全
    IIS 8 上传图片 上传文件报413错误及仅Https下报413问题,IIS高版本的配置方案及Web.config配置全解
    (一) MongoDB安装与配置
    Net Core 导出PDF
    ASP.NET Core AutoWrapper 自定义响应输出
    浅谈Docker之Docker数据持久化Bind Mount和Volume(转)
    搭建mysql集群
    MySQL错误:Can't connect to MySQL server (10060) 解决方案
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13350718.html
Copyright © 2011-2022 走看看