MSDTC(分布式交易协调器),协调跨多个数据库、消息队列、文件系统等资源管理器的事务。该服务的进程名为Msdtc.exe,该进程调用系统Microsoft Personal Web Server和Microsoft SQL Server。该服务用于管理多个服务器 .
位置:控制面板--管理工具--服务--Distributed Transaction Coordinator
依存关系:Remote Procedure Call(RPC)和Security Accounts Manager
建议:一般家用计算机涉及不到,除非你启用Message Queuing服务,可以停止。
位置:控制面板--管理工具--服务--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 回车,搞定!
http://expert.csdn.net/Expert/topic/2835/2835706.xml?temp=.1959955
回复人: j9988(j9988)
一.A.不用事务,关用SELECT 语句.是否可以分布式 查询 ?
B.LINKSERVER 在做分布式更新事务时不能对本机操作.(就是不能环回分布式事务)
C.DBCC TRACEON (3604, 7300)--用跟踪看更详细错误信息.
D.下载MS提供的DTCPing.exe 分装在两台机上,按README说明来运行它.看出错信息.
http://download.microsoft.com/download/complus/msdtc/1.7/nt45/en-us/DTCPing.exe
二.两台机的MSDTC是否都打开了.
三.MSDTC设置是否正确.
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.单击"确定"关闭"我的电脑"属性窗口。
四.
MSDTC依赖于RPC,RPC使用的端口是135,测试135端口是否打开.是否有 防火墙 ?如果有先关了防火墙.
telnet IP 135
如果是关闭的打开它.
五.
有的机由于各种原因),SQLOLEDB不能使用分布式事务,更改为"MSDASQL" 的ODBC方式联接.
使用RRAS而不是RAS.( 控制 面版--管理工具--远程服务管理器)
Check whether you are using Remote Access Server (RAS) to access remote servers. If so, make sure that you have implemented Routing RAS (RRAS). Linked server does not work on RAS because RAS allows only one way communication.
七.检查你的两台 服务器 是否在同一个域中.
如果不在同一个域中,是否建立可信任联接.
八.如果是WIN2000,升级到SP4
九.升级MDAC到2.6以上,最好是2.8.
十.要 安装 SQL的最新补丁: sp3a
'全部补丁的位置
http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=9032f608-160a-4537-a2b6-4cb265b80766
'应该安装的补丁sql 2000 sp3
http://download.microsoft.com/download/d/d/e/dde427eb-0296-4eac-a47c-d11a66b03816/chs_sql2ksp3.exe
我的解决方法:net stop msdtc",然后运行"net start msdtc"开启服务后正常。
回复人: j9988(j9988)
一.A.不用事务,关用SELECT 语句.是否可以分布式 查询 ?
B.LINKSERVER 在做分布式更新事务时不能对本机操作.(就是不能环回分布式事务)
C.DBCC TRACEON (3604, 7300)--用跟踪看更详细错误信息.
D.下载MS提供的DTCPing.exe 分装在两台机上,按README说明来运行它.看出错信息.
http://download.microsoft.com/download/complus/msdtc/1.7/nt45/en-us/DTCPing.exe
二.两台机的MSDTC是否都打开了.
三.MSDTC设置是否正确.
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.单击"确定"关闭"我的电脑"属性窗口。
四.
MSDTC依赖于RPC,RPC使用的端口是135,测试135端口是否打开.是否有 防火墙 ?如果有先关了防火墙.
telnet IP 135
如果是关闭的打开它.
五.
有的机由于各种原因),SQLOLEDB不能使用分布式事务,更改为"MSDASQL" 的ODBC方式联接.
使用RRAS而不是RAS.( 控制 面版--管理工具--远程服务管理器)
Check whether you are using Remote Access Server (RAS) to access remote servers. If so, make sure that you have implemented Routing RAS (RRAS). Linked server does not work on RAS because RAS allows only one way communication.
七.检查你的两台 服务器 是否在同一个域中.
如果不在同一个域中,是否建立可信任联接.
八.如果是WIN2000,升级到SP4
九.升级MDAC到2.6以上,最好是2.8.
十.要 安装 SQL的最新补丁: sp3a
'全部补丁的位置
http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=9032f608-160a-4537-a2b6-4cb265b80766
'应该安装的补丁sql 2000 sp3
http://download.microsoft.com/download/d/d/e/dde427eb-0296-4eac-a47c-d11a66b03816/chs_sql2ksp3.exe
我的解决方法:net stop msdtc",然后运行"net start msdtc"开启服务后正常。
==============
TransactionScope的作用是:在其范围内的数据库操作,如果出现错误,将自动回滚。不需用户自己rollback。
但是我在使用时报错了:服务器 'XXX' 上的 MSDTC 不可用。
原因是什么呢。原来msdtc服务没有开。简单啦:net start msdtc即可。
如果要让此服务开机就开着。那就要进services.msc里面将其设为“自动”了。ok,问题解决了。
今天在淘宝的同学告诉我可以通过淘宝员工的网站
www.taobaoyuangong.com转到淘宝,购物可以省不少钱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 回车,弄定! 浏览齐文
种别:asp,asp.net检察批评
位置:节制里板--管理工具--办事--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 回车,弄定! 浏览齐文
种别:asp,asp.net检察批评