在作分散式交易時,常常會發生 MSDTC 設定上的問題,記錄如何啟用 MSDTC 服務及調整相關設定。
MSDTC(Microsoft Distributed Transaction Coordinator)服務是 Windows 協調跨越多個資源管理員的交易,比如資料庫、訊息佇列及檔案系統。
應用程式所在主機與伺服器主機(例:資料庫伺服器)為同一台主機時,只需要啟用 MSDTC 服務即可。
應用程式所在主機與伺服器主機(例:資料庫伺服器)為不同台主機時,應用程式所在主機與伺服器主機都要啟用 MSDTC 服務與相關設定。
1、啟用 MSDTC 服務
依序點選「開始」 → 「系統管理工具」 → 「服務」 → 「Distributed Transaction Coordinator」,開啟「Distributed Transaction Coordinator」視窗。
按下【啟動】啟動服務。
若為叢集主機時,MSDTC 服務所在節點主機都要啟動服務。
2、防火牆設定
依序點選「開始」 → 「控制台」 → 「系統及安全性」 → 「Windows 防火牆」 → 「允許程式通過 Windows 防火牆」,進入「允許程式通過 Windows 防火牆通訊」設定頁面。
按下【變更設定】,勾選「分散式交易協調器」。
若為叢集主機時,MSDTC 服務所在節點主機都要設定防火牆。
3、設定 DTC
依序點選「開始」 → 「系統管理工具」 → 「元件服務」,開啟「元件服務」視窗。
選擇「元件服務」 → 「電腦」 → 「我的電腦」 → 「Distributed Transaction Coordinator」,於「本機 DTC」開啟右鍵選單,選擇「內容」,開啟「本機 DTC」視窗。
若為叢集主機,選擇「叢集 DTC」。
點選「安全性」頁籤。
3.1 網路 DTC 存取
勾選「網路 DTC」存取。
3.2 交易管理員通訊
勾選「允取輸入」、「允取輸出」。
驗證項目與交易項目使用情境可參考 MSDN 文章:Troubleshooting Problems with MSDTC。
嘗試將自己的理解寫成文字紀錄,資料來源均來自於網路。
如有理解錯誤、引用錯誤或侵權,請多加指正與告知,讓我有更多的進步與改進的空間,謝謝!