Quantcast
Channel: SQL Server Replication forum
Viewing all articles
Browse latest Browse all 4054

Create Table Trigger to replicate data from MSSQL2K5 to Oracle 11G on Linux

$
0
0

I am trying to create a trigger on my MSSQL 2k5 server so that when a record is inserted, a replicated record is created in a table on an Oracle 11g database on a Linux server (Oracle Linux 6).

Creating the trigger is easy, but when I test it I am getting an error stating the following:

.NetSqlClient Data Provider The operation could not be performed because OLE DB Provider 'OraOLEDB.Oracle'for linked server "<myserver>"was unable tobegin thedistributedtransaction.

OLEDB Provider "OraOLEDB.Oracle"for linked server "<myserver>" returned:"New transaction cannot enlist in the specified transaction coordinator"

 

Here is the trigger (MSSQL):

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE PROCEDURE insert_aban8_state

    @an8 int,

    @st nvarchar(3)

AS

BEGIN

    SET NOCOUNT ON;

    declare @c numeric

    select @c = count(*) from [e9db]..[CRPDTA].[ABAN8_STATE$] where alan8=@an8 and aladds=@st

    if(@c =0)

     begin

        insert into [e9db]..[CRPDTA].[ABAN8_STATE$]

        values(@an8, @st)

     end

    END

GO

 

 

 

After reviewing the MS Transaction Coordinator, I am now totally confused. I checked the services and have the MS DTC enabled and running, but am not sure what to do on the Linux side.

Does the Oracle Services for Microsoft Transaction Server (OraMTS) work on Linux? I could only find references for this for Oracle 11g on Windows.

 

What do I need to do to enable this replication via mssql table trigger to Oracle11g on Linux?


Viewing all articles
Browse latest Browse all 4054

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>