如何在 Windows Server 20122012R2 中配置 MSDTC,令其使用特定端口

如何在 Windows Server 20122012R2 中配置 MSDTC,令其使用特定端口,第1张

外围网络中有一个 Web 服务器,后端生产网络中有一个独立的 SQL Server (或 SQL Server 群集实例),防火墙将两个网络隔开。MSDTC 需要在 Web 服务器和后端 SQL Server 之间使用特定端口对其进行配置,以限制端口在两个网络之间的防火墙中打开。

举例来说,我们配置 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服务器都需要做上述相同的设置,才能保证分布式事务的正常执行。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11297162.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存