事務使用時MSDTC不可用解決辦法

2021-08-26 16:15:47 字數 898 閱讀 7361

在使用linq對多表進行插入的時候,使用了transactionscope

using (transactionscope scope = new transactionscope())

jshelper.alert("刪除成功", this);

使用時提示「msdtc不可用」,這是怎麼回事呢?

msdtc(分布式交易協調器),協調跨多個資料庫、訊息佇列、檔案系統等資源管理器的事務。該服務的程序名為msdtc.exe,該程序呼叫系統microsoft personal web server和microsoft sql server。該服務用於管理多個伺服器 。

位置:控制面板--管理工具--服務--distributed transaction coordinator

依存關係:remote procedure call(rpc)和security accounts manager

建議:一般家用計算機涉及不到,除非你啟用message queuing服務,可以停止。

解決辦法:

方法1. 在windows控制面版-->管理工具-->服務-->distributed transaction coordinator-->屬性-->啟動

方法2. 在cmd下執行"net start msdtc"開啟服務後正常。

注:如果在第1步distributed transaction coordinator 無法啟動,則是因為丟失了日誌檔案,重新建立日誌檔案,再啟動就行了。重新建立 msdtc 日誌,並重新啟動服務的步驟如下:

(1) 單擊"開始",單擊"執行",輸入 cmd 後按"確定"。

(2) 輸入:msdtc -resetlog (注意執行此命令時,不要執行掛起的事務)

(3) 最後輸入:net start msdtc 回車,搞定!

MSDTC不可用解決辦法

msdtc 分布式交易協調器 協調跨多個資料庫 訊息佇列 檔案系統等資源管理器的事務。該服務的程序名為msdtc.exe,該程序呼叫系統microsoft personal web server和microsoft sql server。該服務用於管理多個伺服器 位置 控制面板 管理工具 服務 di...

MSDTC不可用解決辦法

msdtc 分布式交易協調器 協調跨多個資料庫 訊息佇列 檔案系統等資源管理器的事務。該服務的程序名為msdtc.exe,該程序呼叫系統microsoft personal web server和microsoft sql server。該服務用於管理多個伺服器 位置 控制面板 管理工具 服務 di...

MSDTC不可用解決辦法

msdtc 分布式交易協調器 協調跨多個資料庫 訊息佇列 檔案系統等資源管理器的事務。該服務的程序名為msdtc.exe,該程序呼叫系統microsoft personal web server和microsoft sql server。該服務用於管理多個伺服器 位置 控制面板 管理工具 服務 di...