全备脚本:
#!/bin/bash
source ~/.bash_profile
rman target sys/1234 nocatalog log=/home/oracle/scripts/backup_full.log <<EOF
#allocate channel for maintenance type disk;
crosscheck backup;
–delete noprompt obsolete recovery window of 14 days;
delete noprompt expired backup;
run
{
allocate channel c1 type disk;
allocate channel c2 type disk;
backup current controlfile format ‘/u01/backup/backup/full_control_%U_%T’;
backup spfile format ‘/u01/backup/backup/full_spfile_%U_%T’;
BACKUP as compressed backupset FORMAT ‘/u01/backup/backup/full_orcl_%U_%T’ filesperset 5 DATABASE;
BACKUP as compressed backupset FORMAT ‘/u01/backup/backup/full_arch_%U_%T’ filesperset 5 ARCHIVELOG ALL DELETE INPUT;
release channel c2;
release channel c1;
}
exit;
EOF
每15分钟备份增量archive:
#!/bin/bash
source ~/.bash_profile
rman target sys/test nocatalog log=/home/oracle/dba/arch_full.log <<EOF
#allocate channel for maintenance type disk;
crosscheck backup;
delete noprompt obsolete;
delete noprompt expired backup;
run
{
allocate channel c1 type disk;
allocate channel c2 type disk;
backup current controlfile format ‘/u01/backup/backup/full_control_%U_%T’;
backup spfile format ‘/u01/backup/backup/full_spfile_%U_%T’;
BACKUP as compressed backupset FORMAT ‘/u01/backup/backup/cumulative_arch_%U_%T’ filesperset 5 ARCHIVELOG from time ‘sysdate -15/1440’ ALL delete input;
release channel c2;
release channel c1;
}
exit;
EOF
#!/bin/bash
path=/u01/backup/backup/
file=date +%Y%m%d -d "7 days ago"
cd
p
a
t
h
r
m
−
r
f
∗
path rm -rf *
pathrm−rf∗file*
rsync -avzP --bwlimit=50000 -e ‘ssh -p 9822 -i /root/.ssh/log_id_rsa’ root@192.168.1.1:/u01/backup/backup/ /oranas/data >> backup.log