Re: Using Advance Replication for updating content from one server to the other...
Date: Sat, 16 Feb 2002 05:47:09 +0800
Message-ID: <1f7omsd.11vaiyj1krqps6N%E_at_E.COM>
Option 3 would be your best bet, however it's no just a case of turning
on repication.
it depends a lot on the structure of your database and if your code is
serverside or client side.
Deletes are a real big problem, in that the replication process does not
handle them too cleanly. if you are/can deleting at more than 1
replicated site, i.e if you have 2 servers and you can delete from both
at the same time then it can get messy, but if you only delete from one
then replicate the changes it's a lot simpler.
there is a system called procedural replication, that might be worth
looking at
or snapshot repliation which allows you to select against various tables
then replicate the results.
take a look at "o'reilly-- oracle distributed systems" it's a good
starting book that covers all the different systems.
steve
Christian Sylvestre <csyl_at_okami.com> wrote:
> Hello. I am looking for a good solid solution for a little/big problem
you have a better chance if most of your code is server side, as it is
easier to control the replication process.
this allows calls to procedures on one server to be replicated to
another server, it tends to be a lot cleaner than table replication ,as
it leaves you with more control.
> ;-)
>
> I have 2 Oracle DB server running on 2 diffrent machines.
>
> The first DB server is used as the "staging/publishing" server. I.e.
> content updates are made on that server and approved on that server.
>
> We then need to push these content updates to the production DB
> server.
>
> However this need to be:
> - Done on demand.
> - Only a subset of the data of the "staging/publishing" server needs
> to be pushed to the production DB server.
>
> Here are the 3 solutions we looked at:
>
> 1- Trapping every DML (Update/Delete/Insert) done on the application
> level and writing them to a "kind" of script. Then copying that script
> from the "staging/publishing" server to the production DB server and
> then running that script with sqlplus from the command line.
>
> 2- Using a Database comparison tool to compare the 2 DB and then build
> a script that could be applied to the production server.
>
> 3- Using Oracle Replication to replicate the subset of the data from
> the "staging/publishing" server to the production DB server.
>
> FYI: The two severs are running 8.1.7 on AIX and the production
> servers are using Oracle HA (High Availability) Parallele servers.
>
> Option 1 is feasible but has a lot of failure points. Opction 2 could
> work but we have not found any command line comparison tools for
> UNIX...
>
> We are in favour of option 3 but we are not sure if Advance
> Replication would allow us to do so. I know that you can actually
> replicate only specific tables, but is it possible to replicate
> specific data in a table (based on a defined query)?
>
> Any comments/idea (even crazy ones) would be welcome!!!
>
> Cheers,
>
> Christian
Received on Fri Feb 15 2002 - 22:47:09 CET