MS DTC服务无法启动解决方法 .

具体步骤如下:开始菜单——运行——输入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. 在 权限 窗格中, 单击以选中 允许 复选框对于下列权限: 读取和执行 读取  写入

你可能感兴趣的:(技术文章)