The server's MSDTC is not available for resolution

  • 2020-05-13 04:13:06
  • OfStack

MSDTC(distributed transaction coordinator) coordinates transactions across multiple databases, message queues, file systems, and other resource managers. The process for this service is called Msdtc.exe, and it calls the systems Microsoft Personal Web Server and Microsoft SQL Server. This service is used to manage multiple servers.

Location: control panel -- management tools -- services --Distributed Transaction Coordinator

Dependencies: Remote Procedure Call(RPC) and Security Accounts Manager

Recommendation: 1 general home computers are not involved, unless you enable Message Queuing service, you can stop.

Solutions:
1. In windows control panel -- > Management tools -- > Service - > Distributed Transaction Coordinator-- > Attributes - > Start the
2. Run "net start msdtc" under CMD and the service will work after starting.

Note: if the Distributed Transaction Coordinator cannot be started in step 1, it is because the log file is lost. Recreate the log file and start again. The steps to recreate the MSDTC log and restart the service are as follows:

(1) click "start ", click" run ", enter cmd and press "ok".
(2) input: msdtc-resetlog (note that when running this command, do not execute pending transactions)
(3) finally enter :net start msdtc enter, done!

Here's what others have to add:

MSDTC is not available today when the local machine updates another server's data directly in the trigger

Solutions:

In the windows control panel -- > Management tools -- > Service - > Distributed Transaction Coordinator-- > Attributes - > Start the

1.
A. Use the SELECT statement instead of transactions.
B.LINKSERVER cannot operate on the machine while doing a distributed update transaction.
C. DBCC TRACEON (3604, 7300)-- see more detailed error information with trace.
D. Download the DTCPing. exe provided by MS.
http://download.microsoft.com/download/complus/msdtc/1.7/nt45/en-us/DTCPing.exe
2.
Have the MSDTC of both machines been turned on?
3.
Is MSDTC setting correct?
1). Open the command prompt and run "net stop msdtc", then "net start msdtc".
2). Go to "component service management tools".
3). Browse to "start management tools".
4). Select "component services".
a. Expand the "component services" tree, then expand "my computer".
b. Right-click "my computer" and select "properties".
C. On the MSDTC TAB, make sure the following options are selected: network DTC accesses network management network transactions XA transactions
e. In addition, "DTC login account "1 must be set to "NT Authority/NetworkService".
5). Click "ok". This will prompt you that "MS DTC will stop and restart.
All dependent services will be stopped. Please press "yes" to continue. Click yes to continue.
6). Click "ok" to close the "my computer" property window.
4.
MSDTC relies on RPC and RPC USES port 135. Test whether port 135 is open or not. If you close the firewall first.
telnet IP 135
If it's closed, open it.
5.
For a variety of reasons,SQLOLEDB cannot use distributed transactions, but has been changed to "MSDASQL" ODBC connection.
Use RRAS instead of RAS.
Check whether you are using Remote Access Server (RAS) to access remote servers. If so, make sure that you have implemented Routing RAS (RRAS). Linked server does not work on RAS because RAS allows only one way communication.
6. Check that your two servers are in the same domain, and if not, establish a trusted connection.
7. If it's WIN2000, upgrade to SP4
8. Upgrade MDAC to 2.6 or above, preferably 2.8.
9. To install the latest patch for SQL: sp3a


Simply said. More online search


Related articles: