为MSSQL Server泊坞窗图像启用XA事务

时间:2016-11-30 23:17:54

标签: sql-server linux sql-server-2016

我有用于开发的MSSQL Server Linux docker镜像,我需要在这个实例上启用XA事务,我搜索了很多,但我找到的所有教程只显示了如何从Windows机器,没有Linux。

那么如何从命令行启用XA事务,或者是否有配置文件。

1 个答案:

答案 0 :(得分:1)

在用于Linux的SQLServer 2016和2017中,无法使用XA事务。从SqlServer 2019 for Linux开始(在撰写本文时为预览),distributed transaction support has been added

docker run \
   -e 'ACCEPT_EULA=Y' -e 'MSSQL_SA_PASSWORD=<YourStrong!Passw0rd>' \
   -e 'MSSQL_RPC_PORT=135' -e 'MSSQL_DTC_TCP_PORT=51000' \
   -p 51433:1433 -p 135:135 -p 51000:51000  \
   -d mcr.microsoft.com/mssql/server:2019-CTP2.3-ubuntu

然后,您应该可以使用以下方法enable the JDBC XA support

EXEC sp_sqljdbc_xa_install

用户需要具有权限:

 use master;
 sp_grantdbaccess 'myuser', 'myuser';
 EXEC sp_addrolemember [SqlJDBCXAUser], 'myuser'