举例来说,我们配置 MSDTC 令其使用端口 5000。
在前端 Web 服务器中需要做两件事来限制 MSDTC 将要使用端口。
配置 DCOM 可以使用的端口
配置可供 MSDTC 使用的特定端口
步骤
1. 在 Web 服务器的 Run 菜单中启动 Dcomcnfg.exe。
2. 扩展 Component Services,右键单击 My Computer,选择 Properties。
3. 选择 Default Protocols 选项卡。
4. 单击 Properties 按钮。
5. 单击 Add。
6. 输入 MSDTC 将要使用端口的端口范围。在本例中,我将使用端口 5001-6000。
7.单击 OK,返回 My Computer Properties 窗口,然后单击 OK。这一步很关键,为临时端口修改注册表。
8. 启动 Regedt32.exe。
9. 找到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSDTC。
10. 右键单击 MSDTC 项,选择 New and DWord (32-bit) Value。
11. 输入 ServerTcpPort 作为名称。
12. 右键单击 ServerTcpPort 项,然后选择 Modify。
13. 将 Radio Button 改为 Decimal,然后在 Value Data 处输入 5000,单击 OK。下图为修改后的注册表项:
14. 重新启动 MSDTC Service (单机情况下)或在群集情况下在 Failover Cluster Manager 中运行 MSDTC Resource offline/online。
确认 MSDTC 使用了正确的端口:
打开管理命令提示符,运行 Netstat –ano 来获取端口和进程标识符(PID)
启动 Task Manager 并选择 Details 选项卡
找到 MSDTC.exe 并获取 PID
浏览输出并显示其是 MSDTC
现在 DTC 将会使用注册表中的特定端口,其他进程不会尝试使用与其相同的端口,从而防止了端口重叠。
msdtc.exe是微软分布式传输协调程序。该进程调用系统Microsoft Personal Web Server和Microsoft SQL Server。该服务用于管理多个服务器。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
要启动MSDTC网络访问功能,你需要做到以下几点:1、打开控制面板,选择添加或删除程序,然后选择添加/删除Windows组件
2、选择应用服务器,点击详细信息,选择启动网络DTC访问
3、重启SQL Server和MSDTC服务。
如果启动MSDTC网络访问之后仍出现错误,那么就要进一步查看MSDTC设置是否正确。具体步骤如下:
1、打开管理工具,然后点击组件服务
2、点击右侧的计算机、我的电脑
3、右键点击我的电脑,选择属性
4、点击MSDTC选项卡,选择安全性配置
5、勾选网络DTC访问和其中的子选项(允许远程客户端、允许远程管理)
6、事务管理通信中启动允许入站、允许出站和TIP事务
7、子选项中勾选不要求进行验证
8、最后勾选启动XA事务。
修改做好后,重启SQL Server。
两台sql server服务器都需要做上述相同的设置,才能保证分布式事务的正常执行。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)