Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: How can I capture database changes?

Re: How can I capture database changes?

From: Pete Sharman <psharman_at_us.oracle.com>
Date: Wed, 23 Jun 1999 11:53:12 -0700
Message-ID: <37712D18.FC599B0B@us.oracle.com>


Eric

I wouldn't bother with snapshot logs if you're not going to use replication. All that would do is add an extra step to moving the data. Just put triggers on the tables you're interested in.

The other alternative is to use LogMiner, an 8.1 package that works on 8.0 databases as well. The problem with this in your case in the near real-time requirement. Unless you make your redo logs very small, any log sniffer is not going to be near real-time.

HTH. Pete

Eric Fish wrote:

> Rather than replicating data with existing Oracle facilities, I would like
> to capture database changes and be able to process them with my own
> application. For example, if I have table ACCOUNT, I don't want to
> replicate changes to another Oracle ACCOUNT table, but I do want to be able
> to capture INSERT, UPDATE and DELETE operations on ACCOUNT.
>
> I guess triggers is the most obvious method for doing this, but efficiency
> is very important. Also, ease of installation is important, since we may be
> talking about a lot of tables.
>
> After doing some investigation, I came across snapshot logs as a possible
> source for this type of information. It is my understanding that a snapshot
> log captures database changes to a particular table and stores the
> information about each change.
>
> Questions:
> - can I access the snapshot log contents, and if so, are those contents in a
> useful format?
> - what is the name of the snapshot log?
>
> Better still, I would like to be able to retrieve all database changes of
> interest into a single file, i.e., inserts, updates and deletes to every
> table of interest would be stored in one location. Any clues on how this
> might be done?
>
> On other databases, the transaction log frequently provides a real good
> method for retrieving every database change effficiently. Is there a way to
> do this in Oracle?
>
> One final note: any solution would have to be near real-time, i.e. I need
> to detect the change within a few seconds of its occurrence on the database.
>
> Thanks,
> Eric

--

Regards

Pete


Received on Wed Jun 23 1999 - 13:53:12 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US