41
Oracle’s Backup and Recovery Tool Recovery MANager

Oracle’s Backup and Recovery Tool Recovery MANager

Embed Size (px)

Citation preview

Page 1: Oracle’s Backup and Recovery Tool Recovery MANager

Oracle’s Backup and Recovery ToolRecovery MANager

Page 2: Oracle’s Backup and Recovery Tool Recovery MANager

Presented by Paul Hebert/ITEC

Oracle’s Backup and Recovery ToolRecovery MANager

Page 3: Oracle’s Backup and Recovery Tool Recovery MANager

RMAN creates backups and restores Oracle database files to tape or disk

•Datafiles•Controlfiles•Parameter files•Archive logs

RMAN will perform consistent and inconsistent database backups

•Consistent backups must be performed with the target database shut down•Inconsistent (hot) backups require the target database is in archivelog mode•Inconsistent backups require logical recovery using archivelogs

RMAN manages information about generated backup media files

•Backup information is stored in control files•Backup information optionally stored in an RMAN repository catalog•RMAN can perform point-in-time restoration

3

Page 4: Oracle’s Backup and Recovery Tool Recovery MANager

RMAN can create image copies usable by user-scripted restore procedures

RMAN can create backup sets instead of traditional image copies

RMAN uses disk or tape channels to read and write to disk or tape media

•Exact copies of target database files

RMAN permits restartable backups if you have a specific time window within which backups are permitted

RMAN tape devices rely on 3rd party Media Manager software

4

RMAN has a command-line interface (rman) and is also integrated with Grid Control

Page 5: Oracle’s Backup and Recovery Tool Recovery MANager

Backup set media options

Backup Sets are logical groupings of backed-up database files

•Backup sets can be written to disk or tape•Backup sets can be compressed by omitting unchanged blocks•Tape backup sets can be encrypted (via Oracle Secure Backup)•Tape backups must use backup sets

5

•Backup sets have a unique ID and may have a ‘TAG’ for RMAN identification•Backup sets consist of one or more individual files called backup pieces.•Backup piece files contain the data blocks from a backup

RMAN recovery using Backup Sets

•The recovery process identifies the target SCN or date to which to recover•Needed blocks are retrieved from the appropriate backup set pieces•Data files are reconstructed from the needed blocks

Backup Sets

Page 6: Oracle’s Backup and Recovery Tool Recovery MANager

6

Page 7: Oracle’s Backup and Recovery Tool Recovery MANager

Channels

•A stream of data to a device using one server session•Server session performs the backup, restore and recovery•Channels can be configured with device-specific settings•Channels are automatically allocated, or manually allocated

RUN { ALLOCATE CHANNEL c1 DEVICE TYPE sbt; BACKUP DATABASE PLUS ARCHIVELOG; }

BACKUP DATAFILE 3; RESTORE TABLESPACE users;

7

Page 8: Oracle’s Backup and Recovery Tool Recovery MANager

•Two types of device type – disk and sbt•RMAN has an open API for communicating with Tape and other media manager software•RMAN sends labeled streams of bytes to the media manager during backup•The labeled streams are returned by the media manager during RMAN restore operations

RMAN> CONFIGURE DEVICE TYPE sbt PARALLELISM 1; RMAN> CONFIGURE DEFAULT DEVICE TYPE TO sbt; RMAN> CONFIGURE CHANNEL DEVICE TYPE sbt PARMS 'ENV=(NSR_SERVER=bksvr1)'; RMAN> BACKUP DATABASE;

•Media Manager vendors have specific installation instructions that vary by vendor•Refer to vendors for detailed installation and use instructions

8

Page 9: Oracle’s Backup and Recovery Tool Recovery MANager

Backup Set

Image Copy

•RMAN-proprietary storage of backed-up data blocks•Consist of a Backup Set identifier plus associated backup set files or pieces•Can only be restored using RMAN

•Equivalent to file copies of original database files•RMAN considers user-managed backups as Image Copies•Contain ALL data blocks – no compression

9

Page 10: Oracle’s Backup and Recovery Tool Recovery MANager

Backup sets or image copies can be labeled with a text TAG

RMAN commands can select backup sets or copies using the TAG

TAGs are visible in RMAN list or report output

BACKUP AS COPY COPY OF DATABASE FROM TAG=full_cold_copy TAG=new_full_cold_copy;

BACKUP AS COPY DATABASE TAG=full_cold_copy;

10

Page 11: Oracle’s Backup and Recovery Tool Recovery MANager

Full backup

Incremental backup

•Backup of all specified database file blocks•Independent of when database files were last backed up•Not used in incremental backup strategies

•Backup of blocks changed since last incremental backup• SCN used to identify changed blocks

•Level 0 incremental backup•Level 1 incremental backup

Full backup is equivalent to

incremental level 0

11

Page 12: Oracle’s Backup and Recovery Tool Recovery MANager

Level 0 incremental backups•Backup of all blocks in specified database files•Independent of when files were last backed up•Base for subsequent Level 1 backups

12

Page 13: Oracle’s Backup and Recovery Tool Recovery MANager

Differential backupContain all blocks changed after the most recent incremental backup at level 1 or 0

Level 1 incremental backups

Cumulative backupContain all blocks changed after the most recent incremental backup at level 0

•Cumulative backups become much larger over time•Cumulative backups are quicker to restore

•Differential backups remain smaller and quicker to perform•Differential backups are slower to restore requiring changes in multiple earlier incremental backups

13

Page 14: Oracle’s Backup and Recovery Tool Recovery MANager

RMAN can use a Block Change Tracking file to identify changed blocks

RMAN can report, validate, remove or protect backup files

•RMAN can throttle disk I/O rate during backup and restore•RMAN can limit the number and size of backup set files

RMAN performance controls

•Bitmap file created automatically by Level 0 backup if configured•RMAN can now avoid rescanning database files for changed blocks

(blocks with newer SCN than in previous backup sets)•Loss of change tracking file is harmless – recreated by next Level 0

•RMAN will create a missing Level 0 backup automatically when asked to perform a Level 1 backup

RMAN and missing Level 0 backups

Change Tracking file can introduce database overheadyou need to evaluate if it is worth the extra performance hit

14

Page 15: Oracle’s Backup and Recovery Tool Recovery MANager

RMAN can backup and restore your Flash Recovery Area

RMAN can use and manage ASM files

RMAN can clone (duplicate) databases using the AUXILIARY connection

RMAN can switch an instance to use a copy of a database or datafiles

RMAN actions can be scripted and scheduled using cron or dbms_job

15

Page 16: Oracle’s Backup and Recovery Tool Recovery MANager

RMAN does not automatically enforce your retention policies

RMAN does not automatically delete expired backup files

RMAN does not automatically detect missing backup files

RMAN does not backup any other types of files

• Oracle code tree• Other operating system files• Alert logs and traces• Oracle Wallet files

RMAN is not upward or downward version compatible

• You must backup 10g databases with 10g RMAN!•You can only backup 9i databases with 9i RMAN!•10g and 9i can’t share a repository!

16

Page 17: Oracle’s Backup and Recovery Tool Recovery MANager

Increasing backup set size and backup durationFaster recovery

17

Page 18: Oracle’s Backup and Recovery Tool Recovery MANager

Consistent backup set size and backup durationSlower recovery using more backup sets

18

Page 19: Oracle’s Backup and Recovery Tool Recovery MANager

C. Daily Level 1 Differential Incremental backup

A. Monthly Full Level 0 Incremental backupB. Weekly Level 1 Cumulative Incremental backup

Advantages• RMAN doesn’t have to apply more than a few days worth of

differential backups to the latest cumulative backup and the original level 0 backup

• No more than 1 day of redo logs need to be applied during recoveryDisadvantages

• May not meet with your MTTR target (Mean-Time-to-Recovery)

Rule of Thumb:You should perform a new Level 0 backuponce >50% of blocks have changed

19

Page 20: Oracle’s Backup and Recovery Tool Recovery MANager

Allocating multiple channels for a device type allows parallel completion of RMAN tasks

Manual channel allocation has to happen inside a RUN { } block

Device types can be configured for automatic allocation of parallel channels

CONFIGURE DEVICE TYPE DISK PARALLELISM 2;

Multiple channels can be used to write to multiple devices simultaneously

If a channel fails, surviving channels will attempt to complete the restore job

RUN{ALLOCATE CHANNEL c1 DEVICE TYPE sbt;ALLOCATE CHANNEL c2 DEVICE TYPE sbt;ALLOCATE CHANNEL c3 DEVICE TYPE sbt;BACKUP DATAFILE 5,6,7;}

20

Page 21: Oracle’s Backup and Recovery Tool Recovery MANager

21

Page 22: Oracle’s Backup and Recovery Tool Recovery MANager

Two Steps:

RESTORE

RECOVER

•Missing files are restored from the blocks in backup sets OR•Image copies are copied to the original (or new) file locations•Unmodified files not modified can be skipped by RMAN automatically

•Recovery must be performed for incomplete backups•Archive logs are applied to the database

•RMAN uses the record of available backups in the RMAN repository to select the best available backups for use in the restore operation. •The most recent backup available, or the most recent backup satisfying any UNTIL clause specified in the RESTORE command, is always the preferred choice•If two backups are from the same point in time, RMAN prefers image copies over backup sets because RMAN image copy restores are faster

22

Page 23: Oracle’s Backup and Recovery Tool Recovery MANager

23

Page 24: Oracle’s Backup and Recovery Tool Recovery MANager

script

•Reusable lists of RMAN commands

•Stored on the file system or in the RMAN respository•Not the Control file!

•LOCAL scripts used by a single database instance

•GLOBAL scripts shared by database instances in repository

# create recovery catalog script to back up database and archived logs CREATE SCRIPT backup_whole COMMENT "backup whole database and logs" { BACKUP INCREMENTAL LEVEL 0 TAG b_whole_l0 DATABASE PLUS ARCHIVELOG; }

# creates recovery catalog script to back up database and archived logs CREATE GLOBAL SCRIPT global_backup_db COMMENT "backup any database from the recovery catalog, with logs" { BACKUP DATABASE PLUS ARCHIVELOG; }

24

Page 25: Oracle’s Backup and Recovery Tool Recovery MANager

hostExecute a command on the local host from within RMAN

host “dd if=/orabak/tools.dbf of=/oradata/tools.dbf”

25

Page 26: Oracle’s Backup and Recovery Tool Recovery MANager

sqlExecute a SQL command on the Target database within RMAN

sql ‘alter system archive log current’;

26

Select statements not supported

Page 27: Oracle’s Backup and Recovery Tool Recovery MANager

list / reportcrosscheckvalidatedelete

27

Page 28: Oracle’s Backup and Recovery Tool Recovery MANager

list / reportLIST BACKUP OF DATABASE ARCHIVELOG ALL; # lists known backups of db files and logsLIST COPY; # lists only image copiesLIST BACKUP; # lists all RMAN backup media

REPORT NEED BACKUP; # report which database files need backup

List all backup sets and pieces known by RMAN

May not represent actual files available on disk

28

Page 29: Oracle’s Backup and Recovery Tool Recovery MANager

crosscheckCROSSCHECK BACKUPSET; # crosschecks backup sets on disk and SBTCROSSCHECK BACKUP; # crosscheck all RMAN backup media

Verifies existence of known backup file sets and pieces in the RMAN repositoryMarks backup file sets and pieces as expired if they exceed retention policies

CROSSCHECK doesn’t physically delete anything!

RMAN backup files have four possible states in the repository

AVAILABLEUNAVAILABLEEXPIREDOBSOLETE

29

Page 30: Oracle’s Backup and Recovery Tool Recovery MANager

validateBACKUP VALIDATE DATABASE ARCHIVELOG ALL;

RESTORE CONTROLFILE VALIDATE; RESTORE ARCHIVELOG ALL VALIDATE; RESTORE DATAFILE 4,5,6 VALIDATE;

Verifies existence and availability of database file media

Checks for corrupted blocks and reports them in V$DATABASE_BLOCK_CORRUPTION

Damaged backup file media may be repaired using Block Media Recovery

30

Page 31: Oracle’s Backup and Recovery Tool Recovery MANager

deleteDELETE BACKUP TAG='before_upgrade'; # delete backup based on tagDELETE NOPROMPT ARCHIVELOG ALL; # delete all archivelogsDELETE EXPIRED BACKUP; # delete expired after crosscheckDELETE BACKUP; # delete ALL backups

Remove any or all database backup file media from disk/tape and RMAN repositoryCan remove obsolete media no longer needed to recover under retention policies

31

Page 32: Oracle’s Backup and Recovery Tool Recovery MANager

32

Page 33: Oracle’s Backup and Recovery Tool Recovery MANager

It is easier to show RMAN (and not just talk about it endlessly …)

rman target system/pswd@sid1

rman target system/pswd@sid1 catalog rman/pswd@rmansid

rman target system/pswd@sid1 catalog rman/pswd@rmansid auxiliary system/pswd@sid2

rmanrman>> connect target system/pswd@sid1

33

Page 34: Oracle’s Backup and Recovery Tool Recovery MANager

backup database;•Uses default device type setting (SBT or Disk)•Creates device channels according to parallelism setting•Creates image copies or backup sets•Might not backup controlfile automatically!•Doesn’t backup archivelogs

Page 35: Oracle’s Backup and Recovery Tool Recovery MANager

Inconsistent database backup including archive logs

Page 36: Oracle’s Backup and Recovery Tool Recovery MANager

show controlfile autobackupconfigure controlfile autobackup on

Page 37: Oracle’s Backup and Recovery Tool Recovery MANager

show {parameter|ALL}configure {parameter} clearconfigure {parameter} {newsetting}

Page 38: Oracle’s Backup and Recovery Tool Recovery MANager

restore and recover

Page 39: Oracle’s Backup and Recovery Tool Recovery MANager

RMAN 11g Features•Parallel backup of ‘regions’ of BIG datafiles•New encryption algorithm•Data Recovery Advisor 11g•Online backup of standby databases•Virtual, secure and mergeable RMAN catalogs•Encrypted disk backup sets

Page 40: Oracle’s Backup and Recovery Tool Recovery MANager

40

Page 41: Oracle’s Backup and Recovery Tool Recovery MANager

Oracle® Database Backup and Recovery Basics10g Release 2 (10.2) http://download.oracle.com/docs/cd/B19306_01/backup.102/b14192/bkup004.htm#sthref385

Oracle® Database Backup and Recovery Advanced User's Guide 10g Release 2 (10.2)

http://download-east.oracle.com/docs/cd/B14117_01/server.101/b10734/toc.htm

Oracle® Database Backup and Recovery Reference10g Release 2 (10.2)

http://download-west.oracle.com/docs/cd/B19306_01/backup.102/b14194/toc.htm

Freeman & Hart, Oracle9i RMAN Backup & Recovery, Oracle Press(useful 3rd party media manager chapters)http://www.mhprofessional.com/product.php?cat=7&isbn=0072226625

41