2011-05-19 144 views
1

我正在使用事务处理作用域。在这个交易范围内,我有一个mysql数据库连接。但是,我需要用前一个事务范围来打开一个新的[又一个] MySQL连接。当前不支持多个同时连接或同一事务内的不同连接字符串的连接

当我这样做时,我得到以下错误Multiple simultaneous connections or connections with different connection strings inside the same transaction are not currently supported.

这是因为MySQL服务器不支持多分布式事务,有什么我应该改变代码或任何我应该改变的服务器?

会不会有支持,如果我使用上面的场景中有两个连接被到SQL Server制成的,而不是MySQL服务器

回答

0

虽然我从来没有尝试过这个自己对MySQL的,我希望这是可能的,只要你可以创建一个XA的数据源。

This question似乎暗示MySql确实支持XA。

您可能会遇到的一个问题是您需要在能够处理XA事务的环境中运行。 (事实上​​,您正在跨两个数据库进行分布式事务,因为您正在使用两个单独的连接)我习惯于在Java EE App Server中工作,因此服务器充当事务协调器,我不确定会发生什么在独立的Java程序中。

+0

感谢您的回复。我正在寻找XA,就像你说的一样。我会回到细节。 – Saravanan 2011-05-19 08:10:06