Mastering RMAN Backup Commands Tutorial
320 likes | 401 Vues
Learn to create backup sets, manage backups, and issue Recovery Manager commands effectively with examples. Explore the types of RMAN commands and necessary constraints for backup operations.
Mastering RMAN Backup Commands Tutorial
E N D
Presentation Transcript
Commands BACKUP Block C.T. Inc. Update LIST REPORT DELETE Objectives • After completing this lesson, you should be able to do the following: • Use the RMAN BACKUP command to create backup sets and image copies • Manage the backups and image copies taken with RMAN
Issuing Recovery Manager Commands • Interactive client • Enter commands at RMAN prompt. • Use when performing analysis, or when running reports or stored scripts. • Batch mode • Use with automated jobs. • Specify a command file when starting RMAN. • Specify the log file name to capture session log. • Pipe interface • Specify the PIPE command-line argument. • Use to communicate data between sessions or between RMAN and an external application.
Types of RMAN Commands • RMAN commands are of the following types: • Stand-alone command: • Is executed individually at the RMAN prompt • Cannot appear as subcommands within RUN • Job command: • Must be within the braces of a RUN command • Is executed as a group • Some commands can be executed as either astand-alone or a job command.
Job Commands: Example • Job commands appear inside a RUN command block: RMAN>RUN { 2>BACKUP AS BACKUPSET 3>FORMAT '/u01/db01/backup/%d_%s_%p' 4> DURATION 10:00 MINIMIZE LOAD 5>(DATABASE); 6>SQL'alter system archive log current'; 7>}
Enterprise Manager Storedscripts Catalog database RMAN Commands: Overview RESTORE RECOVER FLASHBACK RMAN BACKUP SPFILE REPORT LIST Targetdatabase Controlfile Catalog maintenanceCROSSCHECK DELETE…EXPIRED CHANGE Archivedlog files
Data file 1 Data file 3 Data file 2 Data file 3 Commands > BACKUP Block C.T. Inc. Update LIST REPORT DELETE BACKUP Command RMAN> BACKUP AS BACKUPSET 2> FORMAT '/BACKUP/df_%d_%s_%p.bus' 3> TABLESPACE hr_data; Backupset Data file 1 Data file 2 Tablespace HR_DATA
Backup Constraints • The database must be mounted or open. • You cannot back up online redo logs. • Only “clean” backups are usable in NOARCHIVELOG mode. • Only “current” data file backups are usable in ARCHIVELOG mode.
Channel Channel Data file 1 Data file 4 Data file 5 Backuppiece 2 MML MML Data file 2 Data file 3 Data file 9 Data file 6 Data file 7 Data file 8 Parallelization of Backup Sets • For performance, allocate multiple channels and assign files to specific channels. Backuppiece 1 Channel BackupPiece 3 MML
Compressed Backups RMAN> BACKUP AS 2> COMPRESSED BACKUPSET 3> DATABASE; Compressed backup files Database files RMAN> CONFIGURE DEVICE TYPE 2> DISK PARALLELISM 2 3> BACKUP TYPE TO 4> COMPRESSED BACKUPSET;
Image Copy RMAN> BACKUP AS COPY 2> DATAFILE '/ORADATA/users_01_db01.dbf' 3> FORMAT '/BACKUP/users01.dbf';RMAN> BACKUP AS COPY 4> ARCHIVELOG LIKE 'arch_1060.arc' 5> FORMAT 'arch_1060.bak'; Copy of data file 3 Data file 3 Data file 3 Copy of archived log Archivedlog file Archivedlog file
Tags for Backups and Image Copies • A tag is a logical name assigned to a backup set or image copy. month_full_backup week_full_backup Data files 1,3 Data file 3 Data files 2,4 Data file 4 Backup set Backup set
BACKUP Command Options • Check for physical block corruptions. • Scan for logical corruptions and physical corruptions. • Set a threshold on the number of detected corruptions allowed before aborting. • Validate the target input files before performing a backup operation. • Duplex the backup set. • Overwrite an existing backup set or image copy. • Pass control of the data transfer between storage devices and the data files on disk to the media management layer. • Encrypt the backup files.
Backing Up Archived Redo Logs • Online redo log file switch is automatic. • Archived log failover is performed. • You can specify a range of archived redo logs to back up. • Backup sets of archived redo log files cannot contain any other type of file. RMAN> BACKUP 2> FORMAT '/disk1/backup/ar_%t_%s_%p' 3> ARCHIVELOG FROM SEQUENCE=234 4> DELETE INPUT;
Whole Database Backup RMAN>BACKUP DATABASE PLUS ARCHIVELOG; Controlfile Archived log file copies Data file copies SPFILE
RMAN Backup Types Full, or "level 0incremental backup" • A full backup contains all used data file blocks. • A level 0 incremental backup is equivalent to a full backup that has been marked as level 0. • A cumulative level 1 incremental backup contains only blocks modified since thelast level 0 incremental backup. • A differential level 1 incremental backup contains only blocks modified since the last incremental backup. Cumulative incremental backup Differential incremental backup
Differential Versus Cumulative • A differential incremental backup contains all blocks changed since the last incremental backup. • A cumulative incremental backup contains all blocks changed since the last level 0 incremental backup. Level 0 Level 0 0 1 1 1c 1 1c 1 0 Lvl Day Sun Mon Tue Wed Thu Fri Sat Sun
Commands BACKUP > Block C.T. Inc. Update LIST REPORT DELETE Block Change Tracking • The backup process can be streamlined by enabling block change tracking, which: • Records changed blocks in a change tracking file • Is used automatically by RMAN, if enabled • Optimizes incremental backups by avoiding full data file scans during backup List of changed blocks 1011001010110 0001110100101 1010101110011 Change trackingfile CTWR Redogeneration SGA Redo log
Enabling Block Change Tracking SQL> ALTER DATABASE ENABLE 2> BLOCK CHANGE TRACKING 3> USING FILE '/mydir/rman_change_track.f' 4> REUSE;
Commands BACKUP Block C.T. > Inc. Update LIST REPORT DELETE Incrementally UpdatingBackups Image copyof data file Incremental backup files RMAN> RECOVER COPY OF 2> DATAFILE {n|'file_name'} 3> WITH TAG 'incr_upd_df1'; Image copy of data file updated to a more recent state Recovered data file
Commands BACKUP Block C.T. Inc. Update > LIST REPORT DELETE LIST Command • List backup sets and copies of data files: • List backup sets and copies of any data file for a specified tablespace: • List backup sets and copies containing archive logs for a specified range: RMAN> LIST BACKUP OF DATABASE; RMAN> LIST BACKUP OF DATAFILE 2> "/db01/ORADATA/u03/users01.dbf"; RMAN> LIST COPY OF TABLESPACE "SYSTEM"; RMAN> LIST COPY OF DATABASE ARCHIVELOG 2> FROM TIME='SYSDATE-7';
REPORT Command Commands BACKUP Block C.T. Inc. Update LIST > REPORT DELETE • Produces a detailed analysis of the repository • Produces reports to answer: • What are the data files in the database? • Which files need a backup? • Which backups can be deleted? • Which files are unrecoverable?
REPORTNEEDBACKUP Command • Lists all data files that require a backup • Assumes that the most recent backup is used during a restore • Provides four options: • Incremental • Days • Redundancy • Recovery window • Uses the current retention policy configuration if no options are specified
REPORTNEEDBACKUP: Examples • Files that need more than three incremental backups for recovery: • Files that have not been backed up for three days: • Backup needed if there are not two or more backups already: • Backup needed to recover to three days ago: RMAN> REPORT NEED BACKUP incremental 3; RMAN> REPORT NEED BACKUP days 3; RMAN> REPORT NEED BACKUP redundancy 2; RMAN> REPORT NEED BACKUP 2> recovery window of 3 days;
Commands BACKUP Block C.T. Inc. Update LIST REPORT > DELETE REPORTOBSOLETE andDELETEOBSOLETE • Find all recovery files that are deemed obsolete according to the current retention policy settings: • List the obsolete recovery files, if no more than two backup copies are needed: • Delete the backup set with a backup set key of 4: • Delete the recovery files considered obsolete, because they have more than two backups: RMAN> REPORT OBSOLETE; RMAN> REPORT OBSOLETE REDUNDANCY 2; RMAN> DELETE BACKUPSET 4; RMAN> DELETE OBSOLETE REDUNDANCY 2;
Managing Backups with EM Navigation aid:Database home page > Maintenance > Manage Current Backups
RMAN Dynamic Views • V$ARCHIVED_LOG • V$BACKUP_CORRUPTION • V$BACKUP_DEVICE • V$BACKUP_FILES • V$BACKUP_PIECE • V$BACKUP_REDOLOG • V$BACKUP_SET • V$BACKUP_SPFILE • V$COPY_CORRUPTION • V$RMAN_CONFIGURATION
Monitoring RMAN Backups • Correlate server sessions with channels by using the SETCOMMANDID command. • Query V$PROCESS and V$SESSION to determine which sessions correspond to which RMAN channels. • Query V$SESSION_LONGOPS to monitor the progress of backups and copies. • Use an operating system utility to monitor the process or threads.
Summary • In this lesson, you should have learned how to: • Use the RMAN BACKUP command to create backup sets and image copies • List backups and image copies taken with RMAN • Report and delete obsolete RMAN backups
Practice Overview: Backing UpYour Database • This practice covers the following topics: • Enabling archival of redo logs for a database • Using RMAN to display the database structure • Using Recovery Manager to back up data files and the control file • Using Recovery Manager to make image copies of data files • Creating a compressed backup of a database • Scheduling a backup job