[Mysql]两阶段提交
- 第一阶段:写入redolog文件,并把redolog的提交状态设置为prepare状态
- 第二阶段:写入binlog文件,完成之后,把redolog的提交状态设置为commit
为什么两阶段提交能保证一致性
如果第一阶段写redolog的时候崩溃,什么都没写入,这个事务就丢失了
如果第二阶段写入binlog的时候崩溃,回滚之前的redolog日志,取消这个事务的操作
如果第二阶段redolog commit的时候崩溃,但是binlog已经写入了,那就再设置一下redolog commit即可
Buy me a cup of coffee ☕.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步