具体步骤如下:开始菜单——运行——输入MMC——文件——添加/删除管理单元——点击“独立”选项卡上的“添加”——选择最下面的“组件服务”,点击添加后关闭弹出窗口并确定——展开组件服务至“我的电脑”节点——在“我的电脑”上右键选择属性——选择MSDTC选项卡点击“重置日志”,日志重置后DTC服务重新启动,问题解决。
msdtc.exe
- 进程信息
进程文件: msdtc 或者 msdtc.exe
进程名称: Distributed Transaction Coordinator
描述: msdtc.exe是微软分布式传输协调程序。该进程调用系统Microsoft Personal Web Server和Microsoft SQL Server。该服务用于管理多个服务器。
msdtc.exe是一个并列事务,是分布于两个以上的数据库,消息队列,文件系统或其他事务保护资源管理器,删除要小心。
如果你确定不会用到它,那就可以删除。
MSDTC设置方法
打开“管理工具――组件服务”,以此打开“组件服务――计算机”,在“我的电脑”上点击右键。在MSDTC选项卡中,点击“安全配置”按钮。
在安全配置窗口中做如下设置:
选中“网络DTC访问”
在客户端管理中选中“允许远程客户端”“允许远程管理”
在事务管理通讯中选“允许入站”“允许出站”“不要求进行验证”
保证DTC登陆账户为:NT Authority/NetworkService
修复办法
首先进入组件服务,查看组件服务/计算机/我的电脑/COM+应用程序,结果报错“COM+ 无法与 Microsoft 分布式事务协调程序交谈”,无法查看里面的对象。
2、进入事件查看器,发现msdtc服务没有正常启动。
3、删除注册表中的键:
? HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/MSDTC
? HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/MSDTC
? HKEY_CLASSES_ROOT/CID
这些都会了,但是后面msdtc的停止/卸载\安装在哪里都不知道了,请指点下列步骤的具体操作方式4、停止MSDTC服务:net stop msdtc
5、卸载MSDTC服务:msdtc -uninstall
6、重新安装MSDTC服务:msdtc -install
7、确认在事件查看器中msdtc服务已经正常启动[这步很关键,如果没有,重新启动下电脑看看]
8、重新设置IIS的IWAM账号密码。[在计算机管理中的用户管理里]
9、同步IIS metabase中IWAM_MYSERVER的密码,在CMD中:c:/inetput/adminscripts>adsutil set w3svc/wamuserpass "yourpassword"
10、同步COM+应用程序所用的IWAM_MYSERVER密码,在CMD中:c:/inetput/adminscripts>cscript synciwam.vbs -v
谢谢
在系统环境中,MS DTC服务、COM+环境是最容易出问题的环节,尤其是在实施、服务过程中,经常被折磨得抓狂,下面是我总结的几个常见问题的修复方法,共享给大家。
1、找不到日志:运行CMD,在命令行输入“msdtc -resetlog”重建日志(很多人喜欢使用后缀为bat的垃圾文件清理小程序,因为包含一条语句del /f /s /q %systemdrive%/*.log,删除了所有的日志文件,容易引起MS DTC日志丢失的情况)
2、无法启动:
(1)运行CMD,在命令行先输入"msdtc -uninstall"卸载MSDTC,
(2)输入“msdtc -install”重新安装MSDTC服务
(3)输入“net start msdtc”启动MSDTC服务
3、修复COM+:
(1)打开注册表,并删除下面的键值:HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/COM3
(2)打开“控制面板”,选择“添加或删除程序”,然后再选择“添加/删除Windows组件”功能。
(3)点击“下一步”来重新安装COM+。事实上,你并不需要选择添加或删除任何组件;COM+照例会自动进行重新安装。
1.打开命令提示,运行"net stop msdtc",然后运行"net start msdtc"。
2.转至"组件服务管理工具"。
3.浏览至"启动管理工具"。
4.选择"组件服务"。
a.展开"组件服务"树,然后展开"我的电脑"。
b.右键单击"我的电脑",然后选择"属性"。
C.在 MSDTC 选项卡中,确保选中了下列选项: 网络 DTC 访问
网络管理
网络事务
XA 事务
e.另外,"DTC 登录帐户"一定要设置为"NT Authority/NetworkService"。
5.单击"确定"。这样将会提示您"MS DTC 将会停止并重新启动。
所有的依赖服务将被停止。请按'是'继续"。单击"是"继续。
6.单击"确定"关闭"我的电脑"属性窗口。
871,保存bom提示: U8.SQL.FailConnectToDB[Connection:zhanghuajie/UFADTA_999_2008][Message:服务器'ZHANGHUAJIE'上的MSDTC不可用。][Souce:Net SqlClient Data Provider]。
根据提示启动Distributed Transaction Coordinator服务,提示:Windows 无法启动 DistributedTransactionCoordinator 本地计算机上。 有关详细信息, 查看系统事件日志。 如果这是一个非Microsoft 服务, 与服务供应商联系, 并指向 -1073737712 特定于服务的代码。命令行录入msdtc -resetlog,再启动DistributedTransactionCoordinator,问题即解决。
使用组件服务时无法正常打开,查看Distributed Transaction Coordinator无法没有启动,手动启动出现错误提示如下:
当您尝试启动 Microsoft 分布式事务协调器 (MSDTC) 服务在 MicrosoftWindowsXP 或 Microsoft Windows Server 2003, 中可能会收到以下错误信息: Windows 无法启动 DistributedTransactionCoordinator 本地计算机上。 有关详细信息, 查看系统事件日志。 如果这是一个非Microsoft 服务, 与服务供应商联系, 并指向 -1073737712 特定于服务的代码。
查看日志有很多Msdtc无法启动的错误如下:
事件类型: 错误
事件源: MSDTC
事件类别: LOG
事件 ID: 4163
说明: 未找到 MSDTC 日志文件。 resetlog 以创建日志文件之后确保由 MSDTC 协调所有资源经理具有没有 indoubt 事务, 请运行 MSDTC -。
事件类型: 错误
事件源: MSDTC
事件类别: TM
事件 ID: 4185
说明: MSDTC 事务管理器启动失败。 LogInit 返回 0x5 错误。
此外, 以下错误事件会记录在系统日志中:
事件类型: 错误
事件源: 服务控制管理器
事件类别: 无
事件 ID 7024:
说明: DistributedTransactionCoordinator 服务因 3221229584 (0xC0001010) 服务特定错误。
以下是网上找到的解决方法,我通过此方法成功解决此问题 (我先停掉了Sql 2000的服务)
原因
因为 MSDTC 服务无法访问 %windir%/System32/Msdtc/Msdtc.log 文件发生此问题。
解决方案
要解决此问题, 根据需要按它们在其中显示顺序使用下列方法。
方法 1: 重新创建 MSDTC 日志
重新创建 MSDTC 日志, 并重新启动服务。 要这样做, 请按照下列步骤操作: 1. 单击 开始 , 单击 运行 , 类型 cmd然后单击 确定 。
2. 在命令提示符, 键入以下命令, 然后按 ENTER 键: msdtc -resetlog 如果使用不当 警告 MSDTC - resetlog 命令可能导致数据损坏。 确保您运行此命令时, 执行不具有任何挂起事务。
3. 键入下列命令, 然后按 ENTER 键: net start msdtc
MSDTC 服务帐户权限设置登录方法 2:
如果方法 1 不能解决问题, 设置登录帐户对 MSDTC 服务来具有读取和写入权限 Msdtc.log 文件。 要这样做, 请按照下列步骤操作: 1. 单击 开始 , 单击 运行 , 类型 cmd然后单击 确定 。
2. 在命令提示符处, 键入 control admintools然后按 Enter。
3. 双击 服务 。
4. 在 服务 窗格, 找到 DistributedTransactionCoordinator 。
5. 列, 登录为 " 中注意帐户名称。
注意 : 默认登录帐户 MSDTC 服务是 NETWORKSERVICE 帐户。
6. 启动 Windows Explorer, 并再打开 %windir%/System32/Msdtc 文件夹。
7. 右击, Msdtc.log 文件, 然后单击 属性 。
8. 单击 安全 选项卡。
9. 单击登录帐户名称, 在步骤 5 中记录。 例如, 单击 NETWORKSERVICE 帐户名称。
10. 在 权限 窗格中, 单击以选中 允许 复选框对于下列权限: 读取和执行 读取 写入