Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Oracle Total Recall is an option for Oracle Enterprise Edition (11g) that provides secure retention and access of historical data.

From the white paper:

Flashback Data Archive creates an internal history table for every tracked table. The internal history table is initially a replica of the FDA-enabled table with additional metadata columns. When one or more columns in the tracked table are updated, a new row is inserted into the history table that is the before-image of the row before the transaction. UPDATE and DELETE operations generate a new record in the history table, but INSERT operations do not – inserted rows appear in the base table. The internal history table is partitioned for better performance, and compressed to reduce disk space requirements. No modifications are allowed to internal history tables. Applications and users can use the ‘AS OF’ and ‘VERSIONS BETWEEN’ SQL constructs to seamlessly query the historical data.

Is an (open-source) alternative for history tracking there?

share|improve this question
up vote 1 down vote accepted

You could use log recovery in most RDBMS, but it is not as "easy" as Oracle's. Basically, all RDBMS can keep track of all executed queries.

So you could use this on a separate server to replay executed queries from a full backup and restore the state of the database at any given point in time (i.e. you could see the state of the database at December 3rd, 13:53 after transaction xxx). You could also analyze the logs and see what happened.

This is very limited and not very practical.

Check PostgreSQL docs here:

share|improve this answer

This is generally done with triggers (or in ORM-land, with equivalent signals). I don't know of a generic and in-database solution, although the replication queues like PGQ are close.

share|improve this answer

You could look at Workspace Manager which is part of the standard database.

An overview of the functionality is here:

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.