4

我目前正在將應用程序升級到SQL 2008/Server 2008 R2 x64,我看到一些奇怪的行爲,我在SQL 2005/Server 2003.隨機我從MSDTC得到一個異常:The partner transaction manager has disabled its support for remote/network transactions. (Exception from HRESULT: 0x8004D025)。請注意,我已啓用網絡交易而無需身份驗證,並且這些交易在95%的時間內都可以工作。但隨後一些人失敗了,這是一個SQLBulkCopy對象,如果這是相關的。在SQL 2008/Server 2008 R2 x64上使用MSDTC事務異常HRESULT:0x8004D025

我已經調查了DTC統計信息,並且有趣的是當事務拋出這個異常時沒有中止事務,但它記錄了一個完成的事務。最讓人感興趣的是遠程事務管理器也會創建一個新的事務(已提交狀態)。第二次寫入是成功寫入數據庫的事務的一部分,但第一次寫入不成功。

在時序方面,當我看到這個錯誤發生了以下內容:

  1. 從表中刪除(這工作)
  2. Bulkcopy在新行(這失敗,引發異常的「 WriteToServer「方法)
  3. 創建寫入發生的記錄(這有效)。

我知道SQL和應用程序都已經爲遠程事務配置了MSDTC,因爲幾個事務可以成功工作。任何想法,爲什麼發生這種情況,我該如何解決它?

回答

7

沒有親眼見過這一個在實踐中,卻發現這一點:

here

  • 請務必檢查 「網絡DTC訪問」, 「允許遠程客戶端」, 「允許入站/出站」,「啓用TIP」 (有些選項可能沒有必要, 有一個嘗試,讓您的配置)
  • 該服務將重新啓動
  • 但你可能需要重新啓動服務器,如果它仍然不起作用
  • +2

    什麼驚喜。重新啓動這兩臺服務器,並且在100次交易之後我無法再現...感謝您用我本來應該做的事情把我放在頭上。哦,至少對於下一個人來說,HRESULT存在一個問題。 – Spence 2011-04-04 05:11:51

    相關問題