微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SQLSERVER 分布式事务开放

配置JTA  sql Server XADataSource参考:http://technet.microsoft.com/zh-cn/library/aa342335.aspx
1.sqljdbc_3.0/chs/auth/x86(x64|IA64)/sqljdbc_auth.dll放入WINDOWS/system32中
2.sqljdbc_3.0/chs/xa/x86(x64|IA64)/sqljdbc_xa.dll放入Microsoft sqlServer/MSsql/Binn/sqljdbc_xa.dll
3.执行xa_install.sql
4.为sql Server登录用户赋予权限。可参与:http://www.blogjava.net/zyw090111/
如果要同时使用 XA 数据源和 Microsoft 分布式事务处理协调器 (MS DTC)来处理分布式事务,则需要执行以下步骤
(1)在 Windows XP 和 Windows Server 2003 上:
1.在“控制面板”中,打开“管理工具”,然后打开“组件服务”。也可以单击“开始”按钮,单击“运行”,在“打开”框中键入dcomcnfg,然后按“确定”打开“组件服务”。
2.展开“组件服务”、“计算机”,右键单击“我的电脑”,然后选择“属性”。
3.单击“MSDTC”选项卡,再单击“安全性配置”。
4.选中“启用 XA 事务”复选框,然后单击“确定”。这将使 MS DTC 服务重新启动。
5.再次单击“确定”以关闭属性”对话框,然后关闭“组件服务”。
6.停止 sql Server,然后重新启动,以确保它与 MS DTC 更改同步。


(2)在Win8或Server 2008上:
1.在“控制面板”中,打开“管理工具”,然后打开“组件服务”。也可以单击“开始”按钮,单击“运行”,在“打开”框中键入dcomcnfg,然后按“确定”打开“组件服务”。
2.展开“组件服务”/“计算机”/"distribute Transaction Coordinator",右键单击“本地DTC”,然后选择“属性”。
3.单击“安全”选项卡,再单击“启用XA事务”。
4.然后单击“确定”。这将使 MS DTC 服务重新启动。
5.再次单击“确定”以关闭属性”对话框,然后关闭“组件服务”。
6.停止 sql Server,然后重新启动,以确保它与 MS DTC 更改同步。


注:在这些配置完成以后如果还出现:
错误:atomikos:error in recovery。
1.驱动程序有问题。即sqljdbc4.jar。我之前遇到这种问题后就重新在Miscrosoft官网上下载了“sqljdbc_3.0.1301.101_chs.exe";解压后,所有的配置都用该解压包中的文件包括sqljdbc_xa.dll)
2.sql Server 2000用的是x86(即32)位的文件来配置。因为通过查询分析器输入"select @@version"来查看sql的版本后就会发现,即使操作系统是Server 2003 X64位,但sql Server 2000仍然是32位的。
在WIn8上面输入“select @@version”后得到版本号“Microsoft sql Server 2008 R2 (RTM) - 10.50.1600.1 (X64)   Apr  2 2010 15:48:46   copyright (c) Microsoft Corporation  Developer Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: ) ”,由此可看出sql Server是X64的。
3.sql Server 2000在配置JTA XADataSource时,如果用sqljdbc.jar包,里面是没有com.microsoft.sqlserver.jdbc.sqlServerXADataSource该类的。因此sql Server 2000也用sqljdbc4.jar该包来配置。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐