MySQL事务的执行流程与MySQL事务䣌恢复流程

MySQL事务执行流程

1.事务开始

2.查询数据库中待更新数据到内存,并加锁

3.将缓存的数据放到InnoDB缓冲区(通过innodb_log_buffer设置的缓冲区)

4.记录Undo Log日志对应的Redo Log日志到内存缓冲区

5.记录Undo Log日志到内存缓冲区

6.记录更新数据对应的Redo Log日志到内存缓冲区

7.在内存中更新数据

8.提交事务触发Redo Log 刷盘

9.Undo Log日志和数据页都通过checkpoint机制刷盘

10.事务结束

其中4、6步骤会进行Redo Log每秒刷盘

 

MySQL事务的恢复流程

1.MySQL崩溃或宕机

2.重启MySQL

3.获取checkpoint(检查点)信息

4.使用Redo Log日志恢复数据

5.恢复的事务如果提交就结束,恢复的事务如果未提交就使用Undo Log日志回滚数据

6.结束

posted @ 2023-10-15 22:18  cs7  阅读(36)  评论(0)    收藏  举报