MySQL中的XA事务
2016-10-03 13:30
190 查看
1、提到XA事务,我们也必须提到普通事务,普通事务和XA事务,还是有很大差别的.
普通事务:在开始事务时,每个事务都会创建一个事务文件,当commit时,先把修改过的数据块,写到事务文件中,然后再一次性的写入数据库文件中。这样在commit时挂出错时,当服务器重启,会重新把事务文件中修改过的数据块写到数据块中,然后删除事务文件。
2、XA事务也叫分布式事务
其实XA事务是基于二阶段提交实现的。XA事务中需要有一个事务协调器来保证所有的事务参与者完成了准备工作(第一阶段)。如果协调器收到所有参与者都准备好的消息,就会通知所有事务可以提交了(第二阶段)。
下面两个图片来自:http://www.infoq.com/cn/articles/xa-transactions-handle
出错回滚:
普通事务:在开始事务时,每个事务都会创建一个事务文件,当commit时,先把修改过的数据块,写到事务文件中,然后再一次性的写入数据库文件中。这样在commit时挂出错时,当服务器重启,会重新把事务文件中修改过的数据块写到数据块中,然后删除事务文件。
2、XA事务也叫分布式事务
其实XA事务是基于二阶段提交实现的。XA事务中需要有一个事务协调器来保证所有的事务参与者完成了准备工作(第一阶段)。如果协调器收到所有参与者都准备好的消息,就会通知所有事务可以提交了(第二阶段)。
下面两个图片来自:http://www.infoq.com/cn/articles/xa-transactions-handle
出错回滚:
相关文章推荐
- MySQL xa 事务局限性
- MySQL XA 事务支持调研
- mysql的XA事务恢复过程详解
- Mysql 第十日 字符集,XA事务,查询缓存
- 分布式事务 - MySQL外部XA事务
- XA事务与MySQL
- XA事务与MySQL
- MySQL通过内部XA事务,保持了binlog与redo log之间数据一致性
- mysql的XA事务恢复过程详解
- 【转载】MySQL 外部XA及其在分布式事务中的应用分析
- mysql 事务
- MySQL与事务
- JTA (XA)事务和JDBC事务
- MYSQL集群与INNODB事务处理的对比总结
- 用新PHP插件实现MySQL为基础的事务
- Mysql | 事务&存储过程
- 让mysql支持事务
- mysql事务处理
- 消息中间件和JMS&XA分布式事务处理
- XA和编程式的事务代码解决!