April 26, 2013 at 4:47 pm
We are designing of an application that using backend SQL database. When records are inserted into a SQL table, we also wanted to update records in an oracle database. The plan is to using linked server in SQL , and create an trigger when SQL server records are updated, then Oracle will be updated too.
We don't use linked servers in our environment for Security reasons, but if it is needed we have to go this route. Any recommendations for security of linked server?
Thanks,
April 26, 2013 at 5:57 pm
Not an answer about linked servers, more about triggers...
Please don't use a trigger for this, make all your transactions through stored procedures and have that update the Oracle server, or even better have the stored procedure write to a message queue and have a separate process updating Oracle from that queue...
MM
select geometry::STGeomFromWKB(0x0106000000020000000103000000010000000B0000001000000000000840000000000000003DD8CCCCCCCCCC0840000000000000003DD8CCCCCCCCCC08408014AE47E17AFC3F040000000000104000CDCCCCCCCCEC3F9C999999999913408014AE47E17AFC3F9C99999999991340000000000000003D0000000000001440000000000000003D000000000000144000000000000000400400000000001040000000000000F03F100000000000084000000000000000401000000000000840000000000000003D0103000000010000000B000000000000000000143D000000000000003D009E99999999B93F000000000000003D009E99999999B93F8014AE47E17AFC3F400000000000F03F00CDCCCCCCCCEC3FA06666666666FE3F8014AE47E17AFC3FA06666666666FE3F000000000000003D1800000000000040000000000000003D18000000000000400000000000000040400000000000F03F000000000000F03F000000000000143D0000000000000040000000000000143D000000000000003D, 0);
April 26, 2013 at 6:18 pm
mister.magoo (4/26/2013)
Not an answer about linked servers, more about triggers...Please don't use a trigger for this, make all your transactions through stored procedures and have that update the Oracle server, or even better have the stored procedure write to a message queue and have a separate process updating Oracle from that queue...
Thanks, could you help to explain why using trigger is not recommended?
What is a message queque, is it SQL server or Oracle related?
Thanks
April 28, 2013 at 8:40 pm
All code inside a table trigger is within the scope of the transaction that started the trigger. Fine in theory, in practice especially involving queries to other servers will cause performance problems as the originating query cannot continue until everything has synchronously completed.
A message queue is a generic programming construct. (Refer to the Wikipedia article) For example, Service Broker is an implementation of a message queue system within SQL Server.
In this case using a message queue will allow the inter-database updates to be done asynchronously.
Viewing 4 posts - 1 through 3 (of 3 total)
You must be logged in to reply to this topic. Login to reply