Académique Documents
Professionnel Documents
Culture Documents
CERN - IT Department
CH-1211 Genève 23
Switzerland LCG
www.cern.ch/it
Agenda
• Types of failures and backups in Oracle
• RMAN Architecture
• Manual vs. RMAN backups
• On-tape backups with RMAN
• RMAN Configuration
• RMAN backup strategies
• RMAN backups at Tier0
• Exemplary recovery scanarios
• Demo
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 2
Types of failures
• Instance Failure
– Usually connected with an Oracle process failure
• Media Failure
– Disk failure, storage array controller failure etc.
• Block Corruption
– Usually caused by bugs in Oracle software
• Human error
– In most cases accidentally deleted/updated data
– Database user or DBA
• Disaster
– Fire, flood, earthquake, plane crash etc.
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 3
Backup options in Oracle
• Physical backups
– Cold (off-line) backups
• Full database only
• Require downtime
• Do not provide flexibility for point in time recovery (PiTR)
– Hot (on-line) backups
• Different types of backups: full, incr. (cumulative, differential),
archivelogs
• Different scopes: full database, tablespace(s) or datafile(s)
• Do not require database downtime
• Can be used to recover full database, single/multiple
tablespace(s)/datafile(s) or a corrupted block
• Database can be recovered to any point in time within
assumed backup retention period
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 4
Backup options in Oracle (2)
• Logical backups
– Logical copy of data in the database
– Support for different backup granularity
– Can be taken either with legacy Export/Import
tools or with Data Pump (10g)
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 5
How hot backups are possible?
Server proc.
Backup proc.
SGA
Tapes
or
disks
DBWR LGWR
system
Log archiver
Db file RedoLog
Db file
Db file
Db file RedoLog
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 6
RMAN architecture
Target
Database
Catalog
Target Auxiliary Database
Database Database
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 7
Types of RMAN hot backups
• Copy or backupset
• Full database backup
• Incremental backups (in 10g 2 levels available: 0 and 1)
– Cumulative, differential
– Can be used to update a copy of the database
• Archivelog backups
• Tablespace(s), datafile(s) backups
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 9
On-tape backups with RMAN
• RMAN allows to take on-disk backups out of the
box
– Flash recovery area, if configured, further simplifies such
backups
– On disk backups are interesting but usually not sufficient
for a disaster recovery
• On-disk backups can be manually sent to tapes
– Recovery can be very troublesome
• RMAN can seamlessly work with third party Media
Managers
– Media Manager Library (MML) is required
– Different configuration tasks for different MMLs
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 10
On-tape backups with RMAN (2)
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 11
RMAN Configuration
• RMAN can be preconfigured
– Configuration is stored in the control file and in the recovery catalog
(if used)
– Can facilitate backup automation
• Most useful settings:
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 12
RMAN Configuration (2)
• Example:
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 13
RMAN backup strategies
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 14
Backup strategy used at Tier0
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 15
Backup operations at Tier0
• Central machine to schedule and run all the
backups
• Central RMAN catalog exported on regular basis
• Examples of RMAN commands being used:
run {
crosscheck archivelog all;
backup force tag ‘some_tag_0T' incremental level 0 check logical
database force format '%d_%T_%U_lvl0T'
plus archivelog format '%d_%T_%U_lvl0Tarch';
delete noprompt force archivelog all completed before „sysdate - 2";
}
run {
crosscheck archivelog all;
backup tag ‘some_tag_1D' incremental level 1
database format '%d_%T_%U_lvl1D'
plus archivelog format '%d_%T_%U_lvl1Darch';
delete noprompt force archivelog all completed before ‘sysdate – 2’;
CERN - IT Department }
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 16
Backup operations at Tier0 (2)
run {
backup tag ‘some_tag_AR' archivelog all
format '%d_%T_%U_arch';
delete noprompt force archivelog all completed before ‘sysdate - 2’;
}
run {
backup maxsetsize 2047G tag ' DB_Copy_tag' device type disk incremental level
1 for recover of copy with tag ‘DB_Copy_tag’ database;
recover device type disk copy of database with tag DB_Copy_tag until time
‘sysdate -2 ‘;
delete force noprompt backupset device type disk tag DB_Copy_tag
completed before ‘sysdate -2’;
}
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 17
Complete database recovery
• Needed when:
– All datafiles are lost or the SYSTEM tablespace datafiles
are lost
– At least one member of each redo log group survived
• Requires:
– Control file recovery (if it’s lost)
– Datafile restore from a backup
– Database recovery using incremental backups and/or
archived redo logs and online redo logs
startup mount
run {
allocate channel c1 device type disk|sbt;
allocate channel c2 device type disk|sbt;
restore database check readonly;
recover database;
alter database open;
}
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 18
Database point-in-time recovery
• Needed when:
– all datafiles are lost
– All copies of the current control file are lost
– Or all online redo log group members are lost
• The most typical recovery in case of systems implementing
SAME approach
• If done after a disaster it has to be preceded by:
– Hardware configuration
– OS and Oracle software installation
– Re-creation or restore from non-RMAN backup of listener.ora,
tnsnames.ora and other important configuration files
– ASM instance and diskgroup configuration (if needed)
– MML installation and configuration
– ...
• Requires
– Spfile restore
– Controlfile restore
– Datafiles restore and recovery
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 19
set dbid=xxxxxxx
startup nomount;
run {
allocate channel c1 device type disk|sbt;
restore spfile to ‘some_location’ from autobackup;
recover database;
alter database open resetlogs;
}
shutdown immediate;
startup nomount;
run {
allocate channel c1 device type disk|sbt;
restore controlfile from autobackup;
alter database mount;
}
run {
set until time = "to_date('24-AUG-2006 00:00:00','dd-mon-yyyy hh24:mi:ss')";
allocate channel c1 device type disk|sbt;
allocate channel c2 device type disk|sbt;
restore database check readonly;
recover database;
alter database open resetlogs;
CERN - IT Department
CH-1211 Genève 23 }
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 20
Tablespace point-in-time recovery
• Needed
– Mainly to address a human error
• Oracle makes efforts to automate it
– Can be done with few clicks in OEM
• Requires
– Point in time recovery of the whole database (an
auxiliary instance is created)
– Export/import of selected tablespaces schemas
or objects
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 21
Block media recovery
• Needed when:
– Database reports either single or multi block corruption
• Can be done with an open database
• Only the table(s) containing corrupted blocks are not
available
• Database corruptions can be discovered with RMAN
backup validate database command
• Corrupted blocks can be found in
V$DATABASE_BLOCK_CORRUPTION
run {
allocate channel c1 device type disk|sbt;
blockrecover datafile 19 block 44;
}
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 22
Single/multiple
datafile/tablespace recovery
• Needed when
– Single/multiple tablespaces or datafiles have been lost
– SYSTEM tablespace is intact
– Controlfiles and online redo logs are intact
• Requires
– To put offline datafiles and tablespaces being recovered
– The database can be open and available to users
run {
sql „alter tablespace users offline”;
allocate channel c1 device type disk|sbt;
restore tablespace users;
recover tablespace users;
sql „alter tablespace users online”;
}
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 23
Demo
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 24
Hands on preparation
• https
://twiki.cern.ch/twiki/bin/view/PSSGroup/Hands
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 25
More info
• Oracle Database 10g RMAN
Backup & Recovery (by
Mathew Hart and Robert G.
Freeman)
• Oracle Documentation
– Backup and Recovery Basics
– Backup and Recovery
Advanced User's Guide
– Backup and Recovery
Reference
CERN - IT Department
CH-1211 Genève 23
Switzerland
www.cern.ch/it LCG 3D Workshop, Bologna, June 2007 - 26