Ошибка MSDTC - сбой вызова RpcMgmtInqServerPrincName.Партнер не поддерживает безопасные звонки - PullRequest
0 голосов
/ 11 мая 2018

Я пытаюсь заставить MSDTC и SQL Server работать вместе на Windows 10 Pro. Я запустил службу координатора распределенных транзакций, и она использует учетную запись сетевой службы. Всякий раз, когда я начинаю распределенную транзакцию в SQL Server, я получаю следующую ошибку:

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

Я включил трассировку диспетчера подключений 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. Переустановленный код неисправности (msdtc -uninstall, перезагрузка, msdtc -install, msdtc -resetlog)
  3. Включен доступ к сетевому DTC (даже если это среда с одним компьютером). Я установил флажок «Разрешить удаление клиентов», «Разрешить удаленное администрирование», «Разрешить входящий», «Разрешить исходящий» и «Аутентификация не требуется».
  4. Свежая установка Windows!

1 Ответ

0 голосов
/ 08 апреля 2019

В транзакции участвует только один компьютер?

Как вы тестируете распределенную транзакцию? Если вы выдаете просто «начать распределенную транзакцию», эта ошибка выдается?

Кроме того, попробуйте использовать монитор процессов sys internals и отфильтровать "msdtc.exe", чтобы увидеть, возникает ли ошибка при доступе к какому-либо ресурсу Windows, например, к файлам или реестру

...