另一篇博客springboot+jta+atomikos分布式多数据源事务管理 (SQLserver)中出现的这个错误
网上找了一下解决办法 ,看起来挺麻烦的 ,其实也就几部操作的事。
就因为sql server库的服务器没有配置XA事务和安装JDBC插件
1、选择控制面板 > 管理工具 > 组件服务。
2、选择组件服务 > 计算机 > 我的电脑 > Distributed Transaction Coordinator。
3、右键单击本地 DTC,然后选择属性。
4、单击本地 DTC 属性窗口上的安全性选项卡。
5、选中启用 XA 事务复选框,然后单击确定。这将重新启动 MS DTC 服务。
6、再次单击确定以关闭“属性”窗口,然后关闭“组件服务”。
7、重新启动 SQL Server (可以在SqlServer management studio中右键你的连接,选择重新启动)以确保它与 MS DTC 更改同步。
8、然后下载jdbc插件,我下载的是6.0版本的,附上下载链接 windows系统勾选第二个.exe 下载,
这样一个东西,
9、双击打开 ,点击Unzip解压得到
10、把Microsoft JDBC Driver 6.0 for SQL Server\sqljdbc_6.0\chs\xa\x64\里面的
sqljdbc_xa.dll 文件copy到SQL Server的binn路径下,我的SQLserver的binn路径是C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn,可以对比着看一下。
11、打开SqlServer management studio运行xa_install.sql数据脚本(直接拖过去就行)
脚本所在路径:Microsoft JDBC Driver 6.0 for SQL Server\sqljdbc_6.0\chs\xa\xa_install.sql
现在应该没有问题了。