Solved

SQL Server 2005 - Oracle 10g Distributed Transaction Error 7391

Posted on 2009-04-06
7
586 Views
Last Modified: 2012-06-27
Hello
I'm trying to run a simple transaction from SQL Server 2005 to an Oracle 10g Linked Server:
BEGIN DISTRIBUTED TRANSACTION
SELECT COUNT(*) FROM FAC_DRP..DROITPROD.HOR_SESSION
COMMIT TRAN

And I get this error:

Msg 7391, Level 16, State 2, Line 5
The operation could not be performed because OLE DB provider "MSDAORA" for linked server "FAC_DRP" was unable to begin a distributed transaction.

The Select statement alone works fine. The MSDTC service is running on the cluster node where SQL Server is running. I've read many posts, but I did not find any solution. Any hint would be welcome, thanks.
Pierrot

0
Comment
Question by:siuf
  • 4
  • 3
7 Comments
 
LVL 57

Expert Comment

by:Raja Jegan R
ID: 24078497
Check whether MSDTC is enabled or not in both the machines.
Further info on MSDTC configurations here:

http://support.microsoft.com/kb/839279

Exclude TCP port 135 on both the machines Firewall
Kindly disable Firewall Service on both the Machines and Try issuing the query again.
This should work
0
 

Author Comment

by:siuf
ID: 24079836
What do you mean when you say "Check whether MSDTC is enabled or not on both machines" ? The Oracle server is a Linux one (Red Hat 3), there is no MSDTC afaik.
0
 
LVL 57

Expert Comment

by:Raja Jegan R
ID: 24083729
Yes you are correct. In Oracle on Linux Platform doesn't has MSDTC.
But make sure that in your Windows machine, MSDTC service is up and running.

Disable Firewall and test it once from SQL Server
0
Comprehensive Backup Solutions for Microsoft

Acronis protects the complete Microsoft technology stack: Windows Server, Windows PC, laptop and Surface data; Microsoft business applications; Microsoft Hyper-V; Azure VMs; Microsoft Windows Server 2016; Microsoft Exchange 2016 and SQL Server 2016.

 

Author Comment

by:siuf
ID: 24084833
OK, I configured the MSDTC as described at http://support.microsoft.com/kb/839279, the firewall is disabled on the SQL Server machine. But the Oracle one is behind a firewall and I don't know what port to open, because the Select statement alone works fine. Just when I add BEGIN TRAN/COMMIT TRAN I get the error 7391.
0
 
LVL 57

Expert Comment

by:Raja Jegan R
ID: 24084934
Just open up the ports 135 for MSDTC in both machines.
TCP port 1433 and UDP Port 1434 needs to be opened in both the machines.
0
 

Author Comment

by:siuf
ID: 24087880
The firewall is disabled on the SQL Server machine, and we opened all from this machine to the Oracle server, but no chance, still the same message.
0
 
LVL 57

Accepted Solution

by:
Raja Jegan R earned 250 total points
ID: 24122980
Ideally you may face errors in Linked Servers in two places:

1. MSDTC
2. Firewall

As per your statements, MSDTC is running and Firewall is disabled. Then you dont have any issues other than Security privileges used to connect the Destination Server. Other than that there should not be any problems in this process.
0

Featured Post

NAS Cloud Backup Strategies

This article explains backup scenarios when using network storage. We review the so-called “3-2-1 strategy” and summarize the methods you can use to send NAS data to the cloud

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
spx for moving values to new table 5 74
How to check data in sql table 11 47
Can Unique column have more than one Null? 8 53
Help  needed 3 26
I've encountered valid database schemas that do not have a primary key.  For example, I use LogParser from Microsoft to push IIS logs into a SQL database table for processing and analysis.  However, occasionally due to user error or a scheduled task…
In this article I will describe the Copy Database Wizard method as one possible migration process and I will add the extra tasks needed for an upgrade when and where is applied so it will cover all.
This Micro Tutorial will teach you how to censor certain areas of your screen. The example in this video will show a little boy's face being blurred. This will be demonstrated using Adobe Premiere Pro CS6.
Nobody understands Phishing better than an anti-spam company. That’s why we are providing Phishing Awareness Training to our customers. According to a report by Verizon, only 3% of targeted users report malicious emails to management. With compan…

810 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question