Applies to:
Oracle Provider for OLE DB - Version: 9.2 to 10.2Microsoft Windows Server 2003
Checked for relevance on 16-May-2007
Symptoms
On MS SQL Server a Linked Server to the Oracle Database using OLE DB cannot initiate a Distributed Transaction returning this error:
Server: Msg 7391, Level 16, State 1, Line 5
The operation could not be performed because the OLE DB provider 'MSDAORA' was
unable to begin a distributed transaction.
OLE DB error trace [OLE/DB Provider 'MSDAORA' ITransactionJoin::JoinTransaction
returned 0x8000d048]."
Cause
There is a change introduced by the Service Pack1 regarding the MSDTC behaviour:
The XA Transactions mechanism is passed from enabled by default to disabled by default.
Without XA Transactions enabled, no Distributed transaction to a target using XA could be initiated
See http://support.microsoft.com/default.aspx?scid=kb;en-us;817066 for more information.
Solution
To implement the solution follow this steps:
1.Open Component Services.
2.Expand the tree view to locate the computer where you want to turn on support for XA transactions (for example, My Computer).
3.Right-click the computer name, and then click Properties.
4.Click the MSDTC tab, and then click Security Configuration.
5.Under Security Settings, click to select the check box for XA Transactions to turn on this support.
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-598370/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/35489/viewspace-598370/