MySql日志
Redo Log
- WAL技术,write-Ahead Logging, 在入库之前先写日志
在InnoDB将数据写入磁盘之前,会将数据先写入RedoLog日志中 - InnoDB引擎自带的日志技术
- 可以解决Crash-safe
- 有空间大小,循环写入,写满之后会将原来的日志擦除
binLog
- MySql服务层自带的日志
- 运行在执行器中
- 可以解决数据同步问题
- 会记录sql的逻辑,比如将“c=2这行记录中的字段C+1”
- 可以在做Mysql集群时,用于集群之间同步数据,实现读写分离
两阶段提交
拿update set c =c+1 where i =2举例
- 执行器: 调用存储引擎 查询出id =2的记录
- 存储引擎: 查询出数据返回给执行器
- 执行器: 计算C+1的执行,并调用存储引擎将记录结果写入磁盘
- 存储引擎: 先将数据写入到Redo Log中,在写入磁盘,将事务的状态改为prepare
- 执行器: 收到存储引擎的执行结果,将sql逻辑写入到BinLog中
- 存储引擎: 将事务提交,事务为commit状态
MySql日志RedoLog和BinLog思维导图
MySql日志RedoLog和BinLog思维导图
这个图是我自己画的并总结的,如果错误欢迎大家指证。
猿来衣舍
这是博主开的淘宝小店,主要经营舒适保暖的服饰,有袜子、主题卫衣、保暖衣。欢迎大家选购。
猿来衣舍
猿来衣舍
猿来衣舍
猿来衣舍
打开淘宝搜索 “猿来衣舍”这四个字就可以搜到小店,希望大家多多支持。
一个人能够走多远,关键在于与谁同行,我用跨越山海的一路相伴,希望得到您用金钱的称赞。