MySQL二进制日志
2015-09-02 11:21
351 查看
每当事务提交,例如autocommit模式下单条语句提交,或者普通模式下MySQL收到commit语句,MySQL将按如下步骤进行:
先把整个事务写入binary log,
而后才将事务提交到InnoDB。
注:写binary log不是写磁盘,将binary log写磁盘由系统变量sync_binlog决定。具体来说,即每向binary log写入sync_binlog次,即刷写一次磁盘。
二进制日志缓存
binary log cache
存在:每条连接各一个,大小由系统变量binlog_cache_size决定。
作用:一个事务做出的修改,当小于binlog_cache_size时,所有修改内容存入binary log cache;当大于binlog_cache_size时,内容存入磁盘临时表。
关联:
二进制日志工作过程:
对非事务性表的修改,在语句执行结束后,即写入binary log。
在事务内部,对InnoDB表的所有修改,如insert、delete、update,存入binary log cache,
先把整个事务写入binary log,
而后才将事务提交到InnoDB。
注:写binary log不是写磁盘,将binary log写磁盘由系统变量sync_binlog决定。具体来说,即每向binary log写入sync_binlog次,即刷写一次磁盘。
二进制日志缓存
binary log cache
存在:每条连接各一个,大小由系统变量binlog_cache_size决定。
作用:一个事务做出的修改,当小于binlog_cache_size时,所有修改内容存入binary log cache;当大于binlog_cache_size时,内容存入磁盘临时表。
关联:
二进制日志工作过程:
对非事务性表的修改,在语句执行结束后,即写入binary log。
在事务内部,对InnoDB表的所有修改,如insert、delete、update,存入binary log cache,
相关文章推荐
- Multi-Master Replication Manager for MySQL FAQ
- MySQL二进制日志
- MySQL中VARCHAR与CHAR格式数据的区别
- MySQL命令行导出数据库
- mysql
- 详解MySQL集群搭建
- MySQL选用可重复读之前一定要想到的事情
- mysql 创建新用户 赋予权限
- mysql配置 --InnoDB相关参数
- mysql配置 --InnoDB相关参数
- mysql配置 --InnoDB相关参数
- mysql引擎
- mysql引擎
- mysql引擎
- Mysql数据迁移
- mysql 向上取整
- MySQL 获得当前日期时间(以及时间的转换)
- MySQL中VARCHAR与CHAR格式数据的区别
- mysql打开binlog
- mysql简单指令