我有2个链接的SQL服务器,两者都是SQL Server 2012 Express Edition。 我正在将insert语句执行到连接的SQL Server表中,直到现在它才能完美运行。我什么都没改变。但现在它给了我以下错误信息。
服务器上的MSDTC' MSERVER1-PC \ SQLEXPRESS'不可用。
我有"分布式事务协调员"服务已启用。尝试重新启动它并尝试了所有选项,但都是静脉。 在分布式事务处理协调器下的组件服务中,在本地DTC中,我启用了网络DTC访问。允许入站和允许出站。检查网络DTC访问。 几乎所有人都尝试了但都是静脉。
任何想法......
答案 0 :(得分:7)
要在Windows Server 2008上运行的业务管理服务器上启用MSDTC,请单击“开始”,“运行”,键入dcomcnfg
,然后单击“确定”以打开“组件服务”。
在控制台树中,单击以展开“组件服务”,单击以展开 单击计算机,单击以展开我的电脑,然后单击以展开分布式事务处理协调器。
右键单击Local DTC,然后单击Properties以显示Local DTC Properties对话框。
切换到“安全”选项卡。
在“安全设置”部分中,单击“网络DTC访问”。
在“客户端和管理”部分中,选择“允许远程客户端和允许远程管理”。
在“事务管理器通信”部分中,选择“允许入站”和“允许出站”。
在“事务管理器通信”部分中,选择“需要相互身份验证”(如果所有远程计算机都运行Windows Server 2003 SP1或Windows XP SP2或更高版本),选择“需要传入呼叫者身份验证”(如果在群集中运行MSDTC),或选择“否”身份验证如果某些远程计算机位于Windows Server 2003 SP1之前或Windows XP SP2之前,则需要。建议的选择是不需要身份验证。 选择“启用XA事务”,然后单击“确定”。
在其他Web服务器上重复步骤1到9。
使用DTCPing.exe验证Web服务器与运行SQL Server或SQL群集的计算机之间的连接,具体取决于您的配置。要获取DTCPing.exe工具,请参阅http://go.microsoft.com/fwlink/?LinkId=72166。 有关如何排除故障的详细信息
答案 1 :(得分:0)
我也尝试了以上所有设置都无济于事。但是好的旧工程原理对我有用“如果出现问题,请尝试重新启动机器”。
答案 2 :(得分:0)
就我而言,问题也不是 MSDTC 服务器。我必须在链接服务器属性 -> 服务器选项下禁用“启用分布式事务提升”选项。