Showing posts from June, 2014

Automatic RAC Recovery (Database Cloning)

For the past couple of months I've been working on a project to automatically clone a three node RAC database on AIX to a single instance database from storage snapshots. The clone was to be done daily after our ETL process had completed and was used to offload reporting as well as other purposes.
Initially I thought this would be quite straightforward having done clones using RMAN before. How hard could it be?
The procedure to clone the database is summarized as follows:

1.Generate controlfile  creation script
2.Identify cloned LUNS
3.Rename cloned disk groups e.g. DG_DATA -> DG_DATA_CLONE
4.Mount cloned disk groups
5.Modify/Create pfile or use existing pfile for clone
6.Setup environment variables for clone
7.Create audit directories for clone
8.Startup clone instance in nomount mode and re-create controlfile from script
9.Recover clone database (Apply archivelogs from source DB)
10.Open database with resetlogs
11.Rename database using NID
12.Create new temp tablespace