环境:目标数据库 clonedb
目录数据库 test
1:crontab -e
min hour data mon day command
0 1 * * 0 /rmanbak/script/inc0.sh
0 1 * * 1 /rmanbak/script/inc1.sh
0 1 * * 2 /rmanbak/script/inc2.sh
...
2:限制rman的资源的使用
set limit channel readrate
set limit channel kbytes
delete obsolete recovery window of days
3:实施步骤
mkdir
通用脚本
connect.rcv 系统里
1:vi connect.rcv
connect catalog rmanuser/rman@test;
connect target sys/oracle@clonedb;
global_del global_arch global_ctl 存储在catalog里
建立catalog的脚本
2:rman cmdfile=./connect.rcv
3:rman catalog rmanuser/rman@test target sys/oracle@clonedb
rman>replace global script. global_del {
allocate channel d1 device type disk;
delete obsolete recovery window of 15 days;
release channel d1;
}
4:rman>list global script. names
5:rman>print script. global_bkctl //查看脚本的内容
6:rman>replace global script. global_arch comment "backup archivelog as well as delete input" {
allocate channel d1 device type disk;
sql "alter database archive log current";
set limit channel d1 readrate=10240;
set limit channel d1 kbytes=4096000;
backup as compressed backupset fromat='/rmanbak/arch_%d_%U'
tag='bkarch'
channel=d1
archivelog all delete input;
release channel d1;
}
rman>list global script. names;
rman>delete global script. script_inc0;
rman>replace global script. global_inc0 comment "backup database as incremental level 0"
execute global script. global_del;
set limit channel d1 device type disk;
set
allocate channel d1 device type disk;
backup as compressed backupset incremental level=0
format='/rmanbak/inc0_%d_%U'
tag='inc0'
channel=d1
database;
release channel d1;
execute global script. global_arch;
execute script. global_bkctl; //备份控制文件
}
建立玩脚本,执行验证是否正确
rman> run {
execute global script. global_inc0;
execute global script. global_inc1;
execute global script. global_inc2;
}
Shell script
vi inc0.rcv
@@/rman/script/connect.rcv
run {
execute global script. global_inc0;
}
exit
cp inc0.rcv inc1.rcv
vi inc1.rcv
run {
execute global script. global_inc1;
}
..
vi inc0.sh
nohup $ORACLE_HOME/bin/rman cmdfile=/rmanbak/script/inc0.rcv log=/rmanbak/script/inc0.log append &
vi inc1.sh
nohup $ORACLE_HOME/bin/rman cmdfile=/rmanbak/script/inc1.rcv log=/rmanbak/script/inc0.log append &
..
rman>list backupset
Crontab -e
0 1 * * 0 /rmanbak/script/inc0.sh
0 1 * * 1 /rmanbak/script/inc1.sh
0 1 * * 2 /rmanbak/script/inc2.sh
..
chown u+x *.sh
验证
tail -f inc0.log
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10979521/viewspace-448736/,如需转载,请注明出处,否则将追究法律责任。