Presentation is loading. Please wait.

Presentation is loading. Please wait.

Oracle’s Backup and Recovery Tool

Similar presentations


Presentation on theme: "Oracle’s Backup and Recovery Tool"— Presentation transcript:

1 Oracle’s Backup and Recovery Tool
Introduction to RMAN Oracle’s Backup and Recovery Tool Recovery MANager

2 Introduction to RMAN Oracle’s Backup and Recovery Tool
Recovery MANager Presented by Paul Hebert/ITEC

3 What RMAN does 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

4 Other RMAN capabilities
RMAN uses disk or tape channels to read and write to disk or tape media RMAN tape devices rely on 3rd party Media Manager software RMAN permits restartable backups if you have a specific time window within which backups are permitted RMAN can create image copies usable by user-scripted restore procedures Exact copies of target database files RMAN can create backup sets instead of traditional image copies RMAN has a command-line interface (rman) and is also integrated with Grid Control

5 Backup Sets Backup Sets
Backup Sets are logical groupings of backed-up database files 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 Backup Sets 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 set media options 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

6 RMAN Backups

7 RMAN Channels 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 Channels RUN { ALLOCATE CHANNEL c1 DEVICE TYPE sbt; BACKUP DATABASE PLUS ARCHIVELOG; } BACKUP DATAFILE 3; RESTORE TABLESPACE users;

8 RMAN Media Managers 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; 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 Media Manager vendors have specific installation instructions that vary by vendor Refer to vendors for detailed installation and use instructions

9 RMAN backup output media
Backup Set 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 Image Copy Equivalent to file copies of original database files RMAN considers user-managed backups as Image Copies Contain ALL data blocks – no compression

10 RMAN Tags 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 DATABASE TAG=full_cold_copy; BACKUP AS COPY COPY OF DATABASE FROM TAG=full_cold_copy TAG=new_full_cold_copy;

11 Full backup is equivalent to incremental level 0
RMAN backup types Full backup Backup of all specified database file blocks Independent of when database files were last backed up Not used in incremental backup strategies Incremental backup 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

12 Incremental Backup Types
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

13 Incremental Backup Types
Level 1 incremental backups Differential backup Contain all blocks changed after the most recent incremental backup at level 1 or 0 Differential backups remain smaller and quicker to perform Differential backups are slower to restore requiring changes in multiple earlier incremental backups Cumulative backup Contain 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

14 Other RMAN capabilities
RMAN can report, validate, remove or protect backup files RMAN performance controls RMAN can throttle disk I/O rate during backup and restore RMAN can limit the number and size of backup set files RMAN can use a Block Change Tracking file to identify changed blocks 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 Change Tracking file can introduce database overhead you need to evaluate if it is worth the extra performance hit RMAN and missing Level 0 backups RMAN will create a missing Level 0 backup automatically when asked to perform a Level 1 backup

15 Other RMAN capabilities
RMAN actions can be scripted and scheduled using cron or dbms_job RMAN can backup and restore your Flash Recovery Area RMAN can clone (duplicate) databases using the AUXILIARY connection RMAN can use and manage ASM files RMAN can switch an instance to use a copy of a database or datafiles

16 What doesn’t RMAN do? 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!

17 Cumulative Incremental Backup Strategy
Increasing backup set size and backup duration Faster recovery Level 0 Cumulative Incremental (Full) - Day 1 Level 1 Cumulative Incremental - Day 2 Level 1 Cumulative Incremental - Day 3 Restorable to Day 1 All blocks backed up Restorable to Day 2 using Level 0 Day 1 and Level 1 Day 2 Contains only blocks changed since Level 0 on Day 1 Restorable to Day 3 using Level 0 Day 1 and Level 1 Day 3

18 Differential Incremental Backup Strategy
Consistent backup set size and backup duration Slower recovery using more backup sets Level 0 Differential Incremental (Full) - Day 1 Level 1 Differential Incremental - Day 2 Level 1 Differential Incremental - Day 3 Restorable to Day 1 All blocks backed up Restorable to Day 2 using Level 0 Day 1 and Level 1 Day 2 Contains only blocks changed since Level 0 on Day 1 Restorable to Day 3 using Level 0 Day 1 and Level 1 Day2 and Level 1 Day 3 Contains only blocks changed since Level 1 on Day 2

19 Mixed Incremental Strategy
Monthly Full Level 0 Incremental backup Weekly Level 1 Cumulative Incremental backup Daily Level 1 Differential 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 recovery Disadvantages May not meet with your MTTR target (Mean-Time-to-Recovery) Rule of Thumb: You should perform a new Level 0 backup once >50% of blocks have changed

20 Channel Parallelism in RMAN
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; }

21 RMAN Restore and Recovery

22 Database Recovery Procedure
Two Steps: RESTORE 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 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 RECOVER Recovery must be performed for incomplete backups Archive logs are applied to the database

23 Reusing RMAN Procedures

24 RMAN scripting 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 script 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; }

25 Useful RMAN commands host
Execute a command on the local host from within RMAN host host “dd if=/orabak/tools.dbf of=/oradata/tools.dbf”

26 Useful RMAN commands sql
Execute a SQL command on the Target database within RMAN sql sql ‘alter system archive log current’; Select statements not supported

27 Managing RMAN backups list / report crosscheck validate delete

28 Managing RMAN backups list / report
List all backup sets and pieces known by RMAN May not represent actual files available on disk list / report LIST BACKUP OF DATABASE ARCHIVELOG ALL; # lists known backups of db files and logs LIST COPY; # lists only image copies LIST BACKUP; # lists all RMAN backup media REPORT NEED BACKUP; # report which database files need backup

29 Managing RMAN backups crosscheck
Verifies existence of known backup file sets and pieces in the RMAN repository Marks backup file sets and pieces as expired if they exceed retention policies crosscheck CROSSCHECK doesn’t physically delete anything! CROSSCHECK BACKUPSET; # crosschecks backup sets on disk and SBT CROSSCHECK BACKUP; # crosscheck all RMAN backup media RMAN backup files have four possible states in the repository AVAILABLE UNAVAILABLE EXPIRED OBSOLETE

30 Managing RMAN backups validate
Verifies existence and availability of database file media Checks for corrupted blocks and reports them in V$DATABASE_BLOCK_CORRUPTION validate Damaged backup file media may be repaired using Block Media Recovery BACKUP VALIDATE DATABASE ARCHIVELOG ALL; RESTORE CONTROLFILE VALIDATE; RESTORE ARCHIVELOG ALL VALIDATE; RESTORE DATAFILE 4,5,6 VALIDATE;

31 Managing RMAN backups delete
Remove any or all database backup file media from disk/tape and RMAN repository Can remove obsolete media no longer needed to recover under retention policies delete DELETE BACKUP TAG='before_upgrade'; # delete backup based on tag DELETE NOPROMPT ARCHIVELOG ALL; # delete all archivelogs DELETE EXPIRED BACKUP; # delete expired after crosscheck DELETE BACKUP; # delete ALL backups

32 RMAN Web Management in Grid Control

33 Jump in and use RMAN! It is easier to show RMAN (and not just talk about it endlessly …) rman target rman rman>> connect target rman target catalog rman target catalog auxiliary

34 Simple database backup
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

35 Inconsistent database backup including archive logs

36 show controlfile autobackup configure controlfile autobackup on
How do I ensure the controlfile is always backed up? show controlfile autobackup configure controlfile autobackup on

37 Configuration Parameters
Setting and clearing Configuration Parameters show {parameter|ALL} configure {parameter} clear configure {parameter} {newsetting}

38 Restore and Recover restore and recover

39 RMAN 11g Features 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 RMAN 11g Features

40 Thanks for your attention!

41 References Oracle® Database Backup and Recovery Basics 10g Release 2 (10.2) Oracle® Database Backup and Recovery Advanced User's Guide 10g Release 2 (10.2) Oracle® Database Backup and Recovery Reference 10g Release 2 (10.2) Freeman & Hart, Oracle9i RMAN Backup & Recovery, Oracle Press (useful 3rd party media manager chapters)


Download ppt "Oracle’s Backup and Recovery Tool"

Similar presentations


Ads by Google