Upload
mohsen-b
View
39
Download
0
Embed Size (px)
DESCRIPTION
Oracle Backup script
Citation preview
Backup Script برای دیتابیس به صورت شبانه
#!/bin/sh export RMAN_DIR;RMAN_DIR=/home/oracle/.admin export BACKUP=/backup-path/%F export ORACLE_SID;ORACLE_SID=MCLSDB export ORACLE_HOME;ORACLE_HOME=/u01/oracle/product/11.2.0/db_1 export PATH;PATH=$PATH:$ORACLE_HOME/bin export NLS_LANG;NLS_LANG=american_america.ar8mswin1256 export dtfmt; dtfmt=`date +%Y%m%d` ######################################################################## rman target / CMDFILE $RMAN_DIR/full_rcv LOG $RMAN_DIR/full.txt ######################################################################## full_rcv: RUN { CONFIGURE CONTROLFILE AUTOBACKUP ON; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '${BACKUP}/${dtfmt} _%F'; #we can allocate of a sufficient number of channel based on our SAN capabilities
ALLOCATE CHANNEL L0C1 DEVICE TYPE DISK FORMAT '${BACKUP}/${ORACLE_SID} _${dtfmt}_L0%u'; ALLOCATE CHANNEL L0C2 DEVICE TYPE DISK FORMAT '${BACKUP}/${ORACLE_SID}_${dtfmt}_L0%u'; BACKUP INCREMENTAL LEVEL 0 DATABASE; ALLOCATE CHANNEL ARC1 DEVICE TYPE DISK FORMAT '${BACKUP}/${ORACLE_SID} _${dtfmt} _Arc%u'; BACKUP ARCHIVELOG ALL; SQL 'ALTER SYSTEM SWITCH LOGFILE’; SQL 'ALTER SYSTEM SWITCH LOGFILE’; SQL 'ALTER SYSTEM SWITCH LOGFILE’; ALLOCATE CHANNEL ARC1 DEVICE TYPE DISK FORMAT '${BACKUP}/${ORACLE_SID} _${dtfmt} _Arc%u'; BACKUP ARCHIVELOG ALL NOT BACKED UP; DELETE NOPROMPT OBSOLETE; } # Check if database can be restored RESTORE DATABASE VALIDATE; # Check if controlfile can be restored RESTORE CONTROLFILE VALIDATE; # Check if archive logs for the past time can be restored RESTORE ARCHIVELOG ALL VALIDATE;
منتقل شوند بهتر است از فرمان زیر برای انجام پروسه Tapeها به صورت هفتگی و یا چند روز یکبار به Backupدر صورتی که
Backup .استفاده شود
#!/bin/sh export RMAN_DIR;RMAN_DIR=/home/oracle/.admin export BACKUP=/backup-path/%F export ORACLE_SID;ORACLE_SID=MCLSDB export ORACLE_HOME;ORACLE_HOME=/u01/oracle/product/11.2.0/db_1 export PATH;PATH=$PATH:$ORACLE_HOME/bin export NLS_LANG;NLS_LANG=american_america.ar8mswin1256 export dtfmt; dtfmt=`date +%Y%m%d` ######################################################################## rman target / CMDFILE $RMAN_DIR/full_rcv_new LOG $RMAN_DIR/full.txt ########################################################################
full_rcv: RUN { CONFIGURE CONTROLFILE AUTOBACKUP ON; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/backup-path/%F'; ALLOCATE CHANNEL L0C1 DEVICE TYPE DISK FORMAT '${BACKUP}/${ORACLE_SID} _${dtfmt}_L0%u'; ALLOCATE CHANNEL L0C2 DEVICE TYPE DISK FORMAT '${BACKUP}/${ORACLE_SID}_${dtfmt}_L0%u'; RECOVER COPY OF DATABASE WITH TAG 'incr_update' UNTIL TIME 'SYSDATE - 7'; BACKUP INCREMENTAL LEVEL 1 FOR RECOVER OF COPY WITH TAG 'incr_update' DATABASE; ALLOCATE CHANNEL ARC1 DEVICE TYPE DISK FORMAT '${BACKUP}/${ORACLE_SID} _${dtfmt} _Arc%u'; BACKUP ARCHIVELOG ALL; DELETE NOPROMPT OBSOLETE; }