Rman增量备份Level012脚本


1、采用0221222增量备份策略,7天一个轮回
也就是周日0级备份,周1 2 4 5 6 采用2级增量备份,周3采用1级增量备份


打开控制文件自动备份 

 CONFIGURE CONTROLFILE AUTOBACKUP ON;  

配置控制文件备份路径 

RMAN > CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/opt/backup/rman/controlfile_%F';

创建数据备份目录

mkdir -p /opt/backup/rman/ 

2、脚本解释:

vim rman_bak_level0.sh    
#! /bin/bash  
export ORACLE_BASE=/u01/app/oracle 
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 
export PATH=$ORACLE_HOME/bin:$PATH 
export ORACLE_SID=yyy    --数据库ORACLE_SID 
#export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK'   --字符集 
rman target / <<EOF   
run{   
allocate channel d1 type disk;   --分配通道d1,类型备份到磁盘 
allocate channel d2 type disk;   --分配通道d2,类型备份到磁盘 
backup incremental level 0 database format '/opt/backup/rman/level0_%d_%s_%p_%u.bkp';   --备份级别、输出格式、路径 
sql 'alter system archive log current';    --对当前redo日志进行归档 
backup archivelog all delete input format '/opt/backup/rman/archivelog_%d_%s_%p_%u.bkp';  --备份归档日志并删除 
crosscheck backup;   --检查备份 
delete noprompt obsolete;  --静默删除过期备份 
release channel d1;  --释放通道d1 
release channel d2;  --释放通道d2 
}   
EOF


3、下面开始创建0级 1级 2级备份脚本

0级备份脚本

vim rman_bak_level0.sh 
#! /bin/bash 
export ORACLE_BASE=/u01/app/oracle 
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 
export PATH=$ORACLE_HOME/bin:$PATH 
export ORACLE_SID=yyy 
#export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK' 
rman target / <<EOF 
run{ 
allocate channel d1 type disk; 
allocate channel d2 type disk; 
backup incremental level 0 database format '/opt/backup/rman/level0_%d_%s_%p_%u.bkp'; 
sql 'alter system archive log current'; 
backup archivelog all delete input format '/opt/backup/rman/archivelog_%d_%s_%p_%u.bkp'; 
crosscheck backup; 
delete noprompt obsolete; 
release channel d1; 
release channel d2; 

EOF


1级备份脚本

vim rman_bak_level1.sh 
#! /bin/bash 
export ORACLE_BASE=/u01/app/oracle 
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 
export PATH=$ORACLE_HOME/bin:$PATH 
export ORACLE_SID=yyy 
#export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK' 
rman target / <<EOF 
run{ 
allocate channel d1 type disk; 
allocate channel d2 type disk; 
backup incremental level 1 database format '/opt/backup/rman/level1_%d_%s_%p_%u.bkp'; 
sql 'alter system archive log current'; 
backup archivelog all delete input format '/opt/backup/rman/archivelog_%d_%s_%p_%u.bkp'; 
crosscheck backup; 
delete noprompt obsolete; 
release channel d1; 
release channel d2; 

EOF


2级备份脚本

vim rman_bak_level2.sh 
#! /bin/bash 
export ORACLE_SID=yyy 
#export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK' 
/u01/oracle/product/11.2.0/db_1/bin/rman target / <<EOF 
run{ 
allocate channel d1 type disk; 
allocate channel d2 type disk; 
backup incremental level 2 database format '/opt/backup/rman/level2_%d_%s_%p_%u.bkp'; 
sql 'alter system archive log current'; 
backup archivelog all delete input format '/opt/backup/rman/archivelog_%d_%s_%p_%u.bkp'; 
crosscheck backup; 
delete noprompt obsolete; 
release channel d1; 
release channel d2; 

EOF


4、加入到crontab中

crontab -e 
#周日0级备份 
00 23 * * 0 /opt/rman_bak_level0.sh 
#周一、二、四、五、六2级增量备份 
00 23 * * 1,2,4,5,6 /opt/rman_bak_level2.sh 
#周三1级增量备份 
00 23 * * 3 /opt/rman_bak_level1.sh 




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值