1 chapter 15 duplicating databases and transporting data
TRANSCRIPT
1
Chapter 15Duplicating Databases and Transporting
Data
2
RMAN Duplication Features
You can duplicate a database without even making a backup of the source database first by using the new Oracle Database 11g technique of network-enabled duplication
You can register in the same recovery catalog as the primary database, since the duplicate database will have its own unique DBID
You can exclude certain tablespaces, such as the read-only tablespaces
You can duplicate the database on the same server or on a remote host
You can duplicate a database to a past point in time if you want
3
Filenames Might be Different from Source to Duplicate
Datafiles Control files Online redo log files Temp files
4
Renaming Files in a Duplicate Database
duplicate target database
to dupdb
from active database spfile
parameter_value_convert '/a01', '/a20'
set sga_max_size = 800m
set sga_target = 700m
set log_file_name_convert = '/a01','/a20',
db_file_name_convert '/a01','/a20';
5
Creating a Duplicate Database on the Same Host
These prerequisites apply to all database duplication jobs: You must connect to both the target (source) database and the
auxiliary (destination) instance. You must start the auxiliary instance with the nomount option. You can’t use a standby database as the target database. You’ll need the password file for the auxiliary instance only if
you’re using the RMAN client on a different host than the auxiliary host or if you duplicate from an active database (see recipe 15-3 and recipe 15-4)
The target database can be open or closed Both the source and destination databases must be on the
same operating system platform (32-bit and 64-bit versions of a platform are considered identical).
6
During the Database Duplication
RMAN does the following:1. Generates a unique DBID for the new duplicate
database2. Creates a new control file for the duplicate database3. Restores the backups and performs an incomplete
recovery using all backups and archived redo logs4. Shuts down and starts up the auxiliary instance5. Opens the duplicate database with the resetlogs
option, thus clearing the online redo logs
7
Duplicating a Database Without Any RMAN Backups
In Oracle Database 11g you duplicate a database without having a backup
Use active database clause of duplicate database command
Network enabled database duplication
8
Duplicating a Database to a Remote Host w/same Filestructure
Nice feature for automating the replication of a database to another host
Might need to replicate a production database to another box for testing purposes
Troubleshooting production problems in a non-production environment
9
Steps for Replicating
1. Backup database
2. Verify the backup
3. Create directories and modify duplicate database initialization file
4. Startup auxiliary database in nomount mode
5. Check Oracle Net connections
6. Run duplicate database command
10
Duplicating a Database When Directories are Different
Quite often source and duplicate make have different directory structures
Use the db_file_name_convert parameter Creates a new locations for datafiles and
online redo log files
11
Creating a Standby Database on Different Host from Primary
Standby database (Data Guard) is Oracle’s disaster recovery tool
Physical standby database is a block for block copy of primary database
Use the syntax “backup current controlfile for standby format”
12
Duplicating a Database to a Point in Time in Past
May want to rebuild production database to a point in time in the past for testing purposes
May want to see a database as data existed for a point in time in the past
Use duplicate...until clause
13
Skipping Tablespaces
You may only need to duplicate part of a database
May not need tablespaces like tools or users in your duplicated tablespace
Use skip tablespace clause
14
Duplicating a Database with a Specific Backup Tag
You want to force RMAN to use a specific backup to be used when duplicating
RMAN> list backup of database; Change backupsets that you don’t want
RMAN to use marked as unavailable
RMAN> change backupset <primary key> unavailable;
15
Resynchronizing a Duplicate Database
You can periodically synchronize a duplicate database with the primary
Rerun the duplicate database command Recopies the datafiles over
16
Transporting Tablespaces on the Same OS Platform
Use RMAN transport tablespace command Tablespace must be self contained (no
referential integrity to other objects in other tablespaces)
RMAN creates an auxiliary tablespace which it uses to create transportable tablespaces
17
Transporting Tablespaces Across Different Operating System Platforms
Big endian vis little endian format If two operating systems use the same
endian format, then no differences from previous example
If endian format different then you must convert the tablespaces being transported to match target operating system format
18
Transporting an Entire Database to a Different Platform
Useful for moving database from one operating system to another
Use convert database command Transport doesn’t include bfiles, controlfiles,
redo logs, and temp files
19
Transporting a Database by Converting Datafiles on the Target Platform
You may do this if you’re converting the source database to several different target platforms
Make sure source database is eligible for conversion
Use convert datafile command