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

    <pre name="code" class="sql">14.2.4 InnoDB Redo Log
    
    14.2.4.1 Group Commit for Redo Log Flushing
    
    
    redo log 是一个基于磁盘数据结构用于crash recovery 来校准被写入的数据 在不完整的事务。
    
    
    在正常的操作中, redo log 编码请求来改变InnoDB 表数据,可能是从SQL语句或者low-leble API请求。
    
    
    修改不完成修改数据文件在一个意外的关机 在初始化会重做,
    
    之前的连接被关闭。
    
    
    
    默认的, redo log 物理的表现为磁盘的一组文件, 命名为ib_logfile0 and ib_logfile1. 
    
    jrhdpt01:/data01/mysql# ls -ltr ib_logfile*
    -rw-r--r-- 1 root  root  100669440 Oct 28 12:28 ib_logfile.tar
    -rw-rw---- 1 mysql mysql 536870912 Nov 22 14:07 ib_logfile1
    -rw-rw---- 1 mysql mysql 536870912 Nov 23 09:27 ib_logfile0
    
    
    MySQL 写重做日志以一个循环的方式。 redo log里的记录是按受影响的记录的编码。
    
    
    
    redo log 日志的磁盘配置使用以下的选项:
    
    1.innodb_log_file_size:  定义redo log 文件的大小。默认的,
    
    redo log files 是48MB。  log files的结合的大小是(innodb_log_file_size * innodb_log_files_in_group) 
    
    2.innodb_log_files_in_group: log files 的日志组。默认是创建2个文件 ib_logfile0 and ib_logfile1.
    
    
    3.
    
    14.2.4.1 Group Commit for Redo Log Flushing 
    
    
    InnoDB , 像任何其他的ACID-兼容的数据库引擎,flushes 一个事务的redo log 在它提交前。
    
    
    InnoDB 使用group commit 功能来提交把多个这样的flush 请求合并在一起来避免每个提交都flush.
    
    
    在group commit,InnoDB 执行一个单独的写日志文件来执行一个commit 动作 对于多个用户事务
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    


    
                                        
    
  • 相关阅读:
    mini2440烧写nor flash
    mini2440系统引导(五)串口UART
    mini2440系统引导(四)存储控制器
    mini2440系统引导(三)当前状态寄存器CPSR
    mini2440系统引导(二)中断寄存器
    mini2440系统引导(一)看门狗
    filebeat版本问题导致logstash无法处理接收到的日志
    kernel: possible SYN flooding on port 80. Sending cookies
    grok正则
    【转载】kafka 基础知识
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13351194.html
Copyright © 2011-2022 走看看