MSDTC错误 - 调用RpcMgmtInqServerPrincName失败。合作伙伴不支持安全通话

问题描述 投票:0回答:1

我试图让MSDTC和SQL Server在Windows 10 Pro上一起工作。我启动了分布式事务处理协调器服务,它正在使用网络服务帐户。每当我在SQL Server中开始分布式事务时,我都会收到以下错误:

Msg 8501, Level 16, State 3, Line 1
MSDTC on server 'DESKTOP-99PFPB8' is unavailable.

我按照此article中的说明启用了DTC连接管理器跟踪。跟踪显示以下内容:

05-11-2018 10:52:25:672 : [3d58.77ac] 0x00000000 [    TRACE_CM] [  TRACE_INFO] InitRpcSecurity (com\complus\dtc\dtc\cm\src\iomgrrpc.cpp@382): Calling RpcServerRegisterAuthInfo with NT Service\MSSQLSERVER as SPN
05-11-2018 10:52:25:678 : [3d58.75c4] 0x800706d3 [    TRACE_CM] [ TRACE_ERROR] CRpcIOManagerClient::SetRpcSecurity (com\complus\dtc\dtc\cm\src\iomgrclt.cpp@569): [Remote:DESKTOP-99PFPB8 a2e530a1] Call to RpcMgmtInqServerPrincName failed.  The partner does not support secure calls
05-11-2018 10:52:25:681 : [3d58.75c4] 0x80070006 [    TRACE_CM] [ TRACE_ERROR] CRpcIOManagerClient::PokeWrapper (com\complus\dtc\dtc\cm\src\iomgrclt.cpp@1174): [Remote:DESKTOP-99PFPB8 a2e530a1] Exception raised in the rpc call C_PokeW
05-11-2018 10:52:25:685 : [3d58.75c4] 0x80000171 [    TRACE_CM] [ TRACE_ERROR] CRpcIOManagerClient::Poke (com\complus\dtc\dtc\cm\src\iomgrclt.cpp@992): [Remote:DESKTOP-99PFPB8 a2e530a1] SecurePokeWrapper call failed
05-11-2018 10:52:25:688 : [3d58.75c4] 0x00000000 [    TRACE_CM] [  TRACE_INFO] CRpcIOManagerClient::Poke (com\complus\dtc\dtc\cm\src\iomgrclt.cpp@1035): Secure Poke failed for LRPC and falling back to unsecure mode... Setting RPC security again!
05-11-2018 10:52:25:692 : [3d58.75c4] 0x80070006 [    TRACE_CM] [ TRACE_ERROR] CRpcIOManagerClient::PokeWrapper (com\complus\dtc\dtc\cm\src\iomgrclt.cpp@1174): [Remote:DESKTOP-99PFPB8 a2e530a1] Exception raised in the rpc call C_PokeW
05-11-2018 10:52:25:694 : [3d58.75c4] 0x80000171 [    TRACE_CM] [ TRACE_ERROR] CRpcIOManagerClient::Poke (com\complus\dtc\dtc\cm\src\iomgrclt.cpp@1081): [Remote:DESKTOP-99PFPB8 a2e530a1] PokeWrapper call failed

我陷入了困境。有谁知道这些错误是什么意思?

我试过的步骤:

  1. 重新启动DTC服务,然后重新启动SQL Server服务
  2. 重新安装DTC(msdtc -uninstall,reboot,msdtc -install,msdtc -resetlog)
  3. 启用网络DTC访问(即使这是单机环境)。我检查了“允许删除客户端”,“允许远程管理”,“允许入站”,“允许出站”和“无需身份验证”。
  4. 全新安装Windows!
sql-server distributed-transactions msdtc
1个回答
-1
投票

交易中只涉及一台计算机?

您是如何测试分布式事务的?如果只发出“开始分布式事务”,则抛出此错误?

另外,尝试使用sys internals进程监视器,并过滤“msdtc.exe”以查看是否发生访问某些Windows资源的错误,如文件或注册表

© www.soinside.com 2019 - 2024. All rights reserved.