데이터베이스 FULL 백업
다음의 스크립트는 로컬에 설치된 데이터베이스에 접속하여 /BACKUP/DATA 위치에 FULL 백업을 수행한다.
"FullBackup.sh"
OUSER=oracle
TS=`date
+"%m.%d-%H:%M"`
su - $OUSER
<< EOF
rman
log=/BACKUP/log/rman_FULL_$TS.log <<EOF1
connect
target /
crosscheck
archivelog all;
delete
noprompt expired archivelog all;
delete
noprompt obsolete;
run{
allocate
channel t1 type DISK;
SET
MAXCORRUPT FOR DATAFILE 3 to 3;
BACKUP
format "/BACKUP/RMAN/FULL_%d_%U" INCREMENTAL LEVEL 0 DATABASE
filesperset 4;
sql
"alter database backup controlfile to
''/BACKUP/RMAN/controlfile_full_backup'' reuse";
sql
"alter system archive log current";
backup
format
"/BACKUP/RMAN/IRDS_%s.arc.rman"
archivelog
all delete all input;
release
channel t1;
}
EOF1
EOF
데이터베이스 아키이브 백업
다음의 스크립트는 로컬에 설치된 데이터베이스에 접속하여 /BACKUP/DATA 위치에 아카이브 백업을 수행한다."DailyBackup.sh"
OUSER=oracle
TS=`date
+"%m.%d-%H:%M"`
su - $OUSER
<< EOF
rman
log=/BACKUP/log/rman_INC_$TS.log <<EOF1
connect
target /
crosscheck
archivelog all;
delete
noprompt expired archivelog all;
run{
allocate
channel t1 type DISK;
SET
MAXCORRUPT FOR DATAFILE 3 to 3;
BACKUP
format "/BACKUP/RMAN/INC_%d_%U" INCREMENTAL LEVEL 1 DATABASE
filesperset 4;
sql
"alter database backup controlfile to
''/BACKUP/RMAN/controlfile_inc_backup'' reuse";
sql
"alter system archive log current";
backup format
"/BACKUP/RMAN/DATABASE_%s.arc.rman"
archivelog
all delete all input;
release
channel t1;
}
EOF1
EOF
참고로 RMAN 은 catalog 을 이용하는 방법과 target database 의 controlfile 을 이용한 방법이 있으나 오라클에서는 catalog 를 이용하는 방법을 강력히 권고한다.
댓글 없음:
댓글 쓰기