HOW TO: Configure Windows Server 2003 for DTC

Many of you may have read my earlier rants about my problems with transactions on my servers. Well, this little situation has occupied most of my brain for the better part of the week, and thanks to the guys at OrcsWeb, it is no longer an issue. I'm going to detail here briefly what to do, and then later next month it will appear in an article for

If you didn't know, DTC stands for Distributed Transaction Coordinator, and it is how servers handle atomic transactions, or self-contained command packages that can be rolled-back in case any part fails.

You have to be extremely careful when doing this. One screw-up and you can hose the system, just like I did to mine (and why LonghornBlogs et. al. was down part of last week.) COM/DTC is a major part of the OS, and there is not really a way to reinstall that component. If you screw it up, short of system recovery disks, you're going to end up blasting your system and starting from scratch. I learned this the hard way.

Step 1: Follow these steps on both web and SQL servers.

Step 2: Install SQL client tools on both servers.

Optional Step 3: Set up a simple VPN on the SQL server, set up the web server to connect through VPN, and then firewall off both servers with ICF.

Step 4: Ensure NETBIOS is enabled on both machines OR add entries in the HOSTS file (c:\windows\system32\drivers\etc) so that the machines are pingable by server name.

Step 5: Follow these steps on the SQL Server to allow the web server's DTC to authenticate to the SQL server's DTC. (I'll have a registry file for this later.)

In working throught these steps, you may need to consult information here and here when troubleshooting. Also, setting up MSDTC tracing was critical to my ability to track down the problem . Thanks to Terry “I still don't have a blog“ Denham for assistaing me on that one. I'll detail those steps in my next installment; it's too late tonight.

UPDATE: Read my Microsoft Knowledge Base article on the subject.


Comments have been disabled for this content.