Using Oracle 10g with our testing server what is the most efficient/easy way to backup and restore a database to a static point, assuming that you always want to go back to the given point once a backup has been created.
A sample use case would be the following
- install and configure all software
- Modify data to the base testing point
- take a backup somehow (this is part of the question, how to do this)
- do testing
- return to step 3 state (restore back to backup point, this is the other half of the question)
Optimally this would be completed through sqlplus or rman or some other scriptable method.
Best Answer
You do not need to take a backup at your base time. Just enable flashback database, create a guaranteed restore point, run your tests and flashback to the previously created restore point.
The steps for this would be:
startup force mount;
create restore point before_test guarantee flashback database;
alter database open;
shutdown immediate; startup mount;
flashback database to restore point before_test;
alter database open;