Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Mailing Lists -> Oracle-L -> RE: Backup/Restore

RE: Backup/Restore

From: Stephen Lee <slee_at_dollar.com>
Date: Tue, 12 Nov 2002 13:50:53 -0800
Message-ID: <F001.00501735.20021112135053@fatcity.com>

You don't say if you are using catalog or not. If not, be sure to backup control files at end of backup. For what it's worth here is what I do for disk backups and no catalog. Business critical databases use catalog and go directly to tape using Networker (P.O.S. ... at least on Tru64). I have separate scripts for database and log files in case the archived log destination gets dangerously full (monitored by cron job).

For database:

run {
allocate channel ch1 type disk format
'/u05/oracle/admin/HRP1/backup/%U_DATA'; set command id to 'rman';
backup

   tag backup_db_full
   (database include current controlfile); release channel ch1;
}

For log files (we are duplexing on this database):

run {
allocate channel ch1 type disk format
'/u05/oracle/admin/HRP1/backup/%U_ARCH'; set command id to 'rman';
change archivelog all crosscheck;
backup

   (archivelog all delete input);
backup

   (archivelog like '/oracle/app/oracle/admin/HRP1/arch2/%' delete input); release channel ch1;
allocate channel ch1 type disk format
'/u05/oracle/admin/HRP1/backup/%U_CONTROL'; backup current controlfile tag='backup'; release channel ch1;
sql "ALTER DATABASE BACKUP CONTROLFILE TO ''/u05/oracle/admin/HRP1/backup/CONTROL_FILE.BAK'' REUSE"; }

If the database and all controlfiles got blown away, then the CONTROL_FILE.BAK is your salvation.

The following "script" is kept handy as a fast reference for restoring. I run the commands by hand; but the script serves to jog my memory as to the commands. I've slept since I put this together, but I think some of the commands are for when you have a catalog.

#!/bin/ksh

## Define variables for your SID

export ORACLE_SID=ABCXYZ
export USER=internal
export PASS=the_password

## With Oracle 9.X you must use sqlplus.
svrmgrl <<-XXX

   connect internal
   startup nomount
   exit
XXX rman nocatalog <<-XXX

   connect target ${USER}/${PASS}@${ORACLE_SID}

   run {

### If you have control files, then you don't need format when allocating channel.
  allocate channel ch1 type disk;

### When you want to restore up to, but not including, a specific log sequence number
### For example, the database wants log 275, but all you have in rman catalog are 273 and 274
#set until logseq=275 thread=1;

### When you want to restore to a specific time. # set until time "to_date('2001-02-09 02:00:00','YYYY-MM-DD HH24:MI:SS')";

###   Various syntax possibilities for restoring control files
#restore controlfile to '/u01/oradata/ORACLE_SID/control_01.ctl';
#     restore controlfile to '/u02/oradata/ORACLE_SID/control_02.ctl';
#     restore controlfile to '/u06/oradata/ORACLE_SID/control_03.ctl';
#     replicate controlfile from '/u01/oradata/ORACLE_SID/control_01.ctl';
###   The following just restores them all.
###   DO NOT restore controlfile when doing a point in time recovery.
###   Most likely, you will not restore controlfile unless you have lost all
control files.
### If you are not using a catalog, then you must copy a backup of the control file at the OS level.
# restore controlfile;
      sql 'ALTER DATABASE MOUNT';
      restore database;
####  You might or might not need restore archivelog.
####  When doing backups to disk, you probably don't need it.
#     restore archivelog all;
      recover database;
####  If control file was restored, then you will probably need resetlogs.
#     sql 'ALTER DATABASE OPEN RESETLOGS';
      sql 'ALTER DATABASE OPEN';

      release channel ch1;
      }

XXX #### If you had to restore the controlfiles (or hand-copy in backup controfiles),
#### or if you lost online redo log(s), or if you are missing archived log(s),
#### then, you will likely need to recover the database by hand using one or
#### more of the following commands.

## With Oracle 9.X you must use sqlplus.

##svrmgrl <<-XXX

## connect internal
## alter database recover using backup controlfile until cancel;
## alter database recover using backup controlfile;
## alter database recover until cancel;
## alter database recover;
## alter database open;
## alter database open resetlogs;

##XXX #### If you are using a catalog, then you will need to reset database #### in the catalog after restoring.
echo ""
echo " ------ DON'T FORGET ------ DON'T FORGET ------"
echo "Don't forget to RESET DATABASE in RMAN catalog."
echo " ------ DON'T FORGET ------ DON'T FORGET ------"
echo
> -----Original Message-----
> From: OraCop [mailto:oracop_at_yahoo.com]
> Sent: Tuesday, November 12, 2002 2:29 PM
> To: Multiple recipients of list ORACLE-L
> Subject: Backup/Restore 
> 
> 
> Hello,
>    I need to comeup with backup strategy for my 
>    production oracle systems running 9iR2 on Solaris9.
> 
>    I do have veritas Netbackup installed. I would 
>    really appreciate if someone can answer these 
>    important questions for me.
> 
>     1- Do I need to install Veritas Oracle agent for 
>        backup?
>     2- What are COMPLETE steps involved to 
>        backup/restore if I want to use Veritas for
>        this purpose? 
>     3- I am using following script to create backup on
> 
>        the local disk. This script does not delete the
>        archive log files after backing 'em up. Why 
>        not? I am using this script at RMAN prompt.   
>        (connect to recvcat)
> 
> run {
> allocate channel c1 type disk; 
> backup 
> full
> #incremental level 2 # 0 1 2 or up
> skip inaccessible 
> tag hot_db_bk_level0 
> filesperset 5 
> # recommended format 
> format '/data/oraidx/backup/bk_%s_%p_%t' 
> (database); 
> sql 'alter system archive log current'; 
> # backup all archive logs 
> backup 
> filesperset 20 
> format '/data/oraidx/backup/al_%s_%p_%t' 
> (archivelog all 
> delete input); 
> release channel c1; 
> } 
>      
>    4- What is the procedure to restore using files 
>       created as output of above script?
>    5- Any ideas/links  to help improve backup
>       strategy, using veritas and RMAN.
> Thanks.    
> 
> OraCop
> 
> 
> __________________________________________________
> Do you Yahoo!?
> U2 on LAUNCH - Exclusive greatest hits videos
> http://launch.yahoo.com/u2
> -- 
> Please see the official ORACLE-L FAQ: http://www.orafaq.com
> -- 
> Author: OraCop
>   INET: oracop_at_yahoo.com
> 
> Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
> San Diego, California        -- Mailing list and web hosting services
> ---------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an E-Mail message
> to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
> the message BODY, include a line containing: UNSUB ORACLE-L
> (or the name of mailing list you want to be removed from).  You may
> also send the HELP command for other information (like subscribing).
> 
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Stephen Lee
  INET: slee_at_dollar.com

Fat City Network Services    -- 858-538-5051 http://www.fatcity.com
San Diego, California        -- Mailing list and web hosting services
---------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).
Received on Tue Nov 12 2002 - 15:50:53 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US