javax.transaction.xa.XAException: java.sql.SQLException: 無法建立 XA 控制串連。(SQL 2000,SQL2005,SQL2008)

來源:互聯網
上載者:User

標籤:

javax.transaction.xa.XAException: java.sql.SQLException:無法建立 XA 控制串連。錯誤: 未能找到預存程序‘master..xp_sqljdbc_xa_init‘。

配置JTA  SQL Server XADataSource參考:http://technet.microsoft.com/zh-cn/library/aa342335.aspx

來源:http://blog.csdn.net/gjf8510/article/details/16118687

 

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該包來配置。

通過這些後應該沒有什麼問題了。困擾了我1周的問題啊,如果所有都配置好後還出問題,肯定就是jdbc驅動程式有問題,這得感謝一網路朋友的提醒!!!在此感謝。

javax.transaction.xa.XAException: java.sql.SQLException: 無法建立 XA 控制串連。(SQL 2000,SQL2005,SQL2008)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.