2011-08-16 104 views
0

儘管對MSDTC各種物品,我似乎無法找到MSDTC的一些詳細的解釋弄清楚我需要如何配置它爲我的特殊情況。MSDTC和分佈式計算

這是我的場景。我有幾個運行在框A上的WCF服務,一個運行在框B上的SQL服務器和一個框C上的測試解決方案。在我的測試中(框C),我幾乎要調用一些服務(框B) ,做一些最終寫入數據庫的工作。當我使用與測試相同的盒子上的SQL數據庫運行這些測試時(框C),一切都很好,每個人都很開心。但是,一旦我只是改變供試品溶液,使其指向上盒-B的SQL服務器數據庫中,我得到異常:對於分佈式事務管理器

網絡訪問(MSDTC)已被禁用。請使用組件服務管理工具在MSDTC的安全配置中啓用DTC以進行網絡訪問。

一個我已經是我沒有在測試盒(箱C),所以爲什麼當我與數據庫這裏運行測試本地這裏沒有被拋出該異常啓用MSDTC的問題嗎?如果我需要啓用MSDTC,是否需要爲所有三個盒子(A-B-C)啓用它?

謝謝!

回答

3

MSDTC是默認啓用的,但網絡訪問被禁止。

所以,當你有橫機談論失敗。

您將需要啓用網絡。看到這篇文章。

http://technet.microsoft.com/en-us/library/cc753510%28WS.10%29.aspx

我有同樣的問題,一個星期左右前,它固定對我來說。

+0

我跟着頁面,併爲SQL框(框B)設置了所有列出的內容。我也允許DTC通過防火牆,但是現在我得到了這個例外:由於通信問題,MSDTC事務管理器無法從源事務管理器獲取事務。可能的原因是:存在防火牆,並且它沒有MSDTC進程的例外情況,兩臺計算機無法通過其NetBIOS名稱找到彼此,或者沒有爲兩個事務管理器之一啓用對網絡事務的支持。 – 5StringRyan

+0

是否在Box A/C上啓用MSDTC網絡訪問? – Cliffboss

+0

我已啓用MSDTC,並在所有防火牆中插入洞。我忘記提到的一個更新,服務和SQL框(A和B)在同一個域上,而測試框(框C)在另一個域上。 – 5StringRyan