Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: General Question about RMAN verification procedures...
Chris,
To check for a sucessful Rman run, I search the Rman Log file at the end of the job. If it contains the string "RMAN-00569:", then the Rman job failed for some reason. I then modify the email subject line from "Backup" to "** Backup Failure **".
You can search the log file a couple of ways - I use Perl on NT and grep on unix and both work just fine.
A simple solution that works well for me.
Good Luck!
Tom Mercadante
Oracle Certified Professional
-----Original Message-----
From: Chris Stephens [mailto:ChrisStephens_at_affina.com]
Sent: Wednesday, February 25, 2004 9:40 AM
To: oracle-l_at_freelists.org
Subject: General Question about RMAN verification procedures...
After realizing that I’m the only dba left standing at this company, I’ve decided that our backup and recovery procedures need revisiting. Specifically the way in which we verify our backups ran successfully each night.
We currently have five 8.1.7.2 oltp’s in archivelog mode that are backed up via RMAN using a recovery catalog, and four 9.2.0.4 warehouse/ods databases in noarchivelog mode that are backed up via RMAN using the individual control files.
I am confident in the recoverability of our backups…they’ve been tested several times…as long as they successfully complete. Currently I am emailed the full output of each backup script for each database. We use 2 separate scripts. 1 for oltp’s and 1 for warehouse.
This is all fine and dandy but to really keep up with it all, that means scanning 9 backup logs each morning.
<whew!>
my question is this…for those of you using RMAN as your backup utility, how do you ensure your backups complete successfully and are valid? Do you query the catalog directly? Do you have a script that validates the backups? Do you have a single email with nice discreet output for each database? ….are you willing to share you scripts? ☺
…and while I’m at it. …can anyone poke any holes in the following scripts? …I know they aren’t as elegant as some…but they work and have been tested.
OLTP:
#!/bin/sh
export ORACLE_HOME=/u01/app/oracle/product/8.1.7
export ORACLE_SID={DB SID}
export ARCH_DEST=/u01/app/oracle/admin/$ORACLE_SID/arch/
rm /oracle_backup/$ORACLE_SID/*
$ORACLE_HOME/bin/rman <<EOF
set dbid={db id…so no one can mess with the tnsnames and screw with out
backups…it is well know that the dba group will have to change this in the
event of some event that would change the dbid}
connect target
connect catalog username/password@{recovery catalog db}
run{
allocate channel d1 type disk;
backup database format '/oracle_backup/$ORACLE_SID/%U' include current
controlfile;
}
sql "alter system switch logfile";
sql "alter system archive log all";
sql "alter database backup controlfile to trace";
sql "alter database backup controlfile to
''/oracle_backup/$ORACLE_SID/prd1_ctl''";
exit;
EOF
#
find ${ARCH_DEST}*.arc -type f -mtime +2 | while read ARCH_LOG; do
echo "removing "$ARCH_LOG
rm $ARCH_LOG
done
Warehouse:
#!/bin/sh
export ORACLE_HOME=/u01/app/oracle/product/9.2.0
export ORACLE_SID=PWH1
rm /$ORACLE_SID/_backup/*
$ORACLE_HOME/bin/rman <<EOF
connect target /
shutdown immediate
startup mount
backup database;
alter database open;
sql 'alter database backup controlfile to trace';
exit; <<EOF
….thanks for any help!!!
chris
-- Archives are at http://www.freelists.org/archives/oracle-l/ FAQ is at http://www.freelists.org/help/fom-serve/cache/1.htmlReceived on Wed Feb 25 2004 - 08:45:39 CST
-----------------------------------------------------------------
----------------------------------------------------------------
Please see the official ORACLE-L FAQ: http://www.orafaq.com
----------------------------------------------------------------
To unsubscribe send email to: oracle-l-request_at_freelists.org put 'unsubscribe' in the subject line. -- Archives are at http://www.freelists.org/archives/oracle-l/ FAQ is at http://www.freelists.org/help/fom-serve/cache/1.html
-----------------------------------------------------------------
![]() |
![]() |