这是我的晚会:
我有一个spring intergation流程,我在MongoDB和MySQL数据库中进行插入:我将数据存储到Mongo中,进行一些处理,然后使用Spring Data将数据插入MySQL(两个数据库的插入都不在同一课程)
所有repos,services,aop transaction和一切都已实现,我需要的是一种在将数据存储到Mongo之前启动事务并在完成mysql插入后结束它的方法,这样如果发生任何问题,MySQL和Mongo插入将回滚。
希望我能清楚地解释我的问题!提前致谢
答案 0 :(得分:1)
事务是数据库更改的内部列表,因此,您不能在2个数据库中拥有1个事务。
每个数据库需要1个事务,如果成功,您可以按顺序提交或单独回滚
须藤:
Create MySQL tansaction
Change MySQL
if Successful
Create Mongo Transaction
change Mongo
if Successful
Commit Mongo changes
Commit MySQL changes
else
rollback Mongo changes
rollback MySQL changes
else
rollback MySQL changes