您好,欢迎访问一九零五行业门户网

RMAN全备份脚本

目标:1、备份脚本每周天半夜3点自动执行。2、数据库全备份,同时备份控制文件及归档日志文件。3、备份保留14天,过期自动删除。
目标:
1、备份脚本每周天半夜3点自动执行。
2、数据库全备份,同时备份控制文件及归档日志文件。
3、备份保留14天,过期自动删除。
4、保留操作日志备查。
(1)编写rman批处理文件:rman 自动备份脚本(oraback0.sh)
run{
 configure retention policy to recovery windown of 14 days;
 cofnigure controlfile autoback on;
 configure controlfile autobackup format for device type disk to '/oracle/oradata/backup/rmanback/%f';
 allocate channel c1 device type disk format '/oracle/oradata/backup/rmanback/orabk0_%d_%t_%s';
 backup database skip inaccessible
 plus archivelog filesperset 20
 delete all input;
 release channel c1;
 }
 allocate channel for maintenance device type disk;
 crosscheck backupset;
 delete noprompt obsolete;
补充:
backup skip 参数:
skip inaccessible :表示跳过不可读的文件。offline的文件只要存在于磁盘上那就仍然可读取,但是有的文件已经被删除或移动就不可读了,加上这个参数就会跳过这些文件。
skip offline:表示跳过offline数据文件。
skip readonly:表示跳过所在表空间为readonly的数据文件。
allocate channle for maintenacne device type disk;是用来分配专用于change、delete、crosscheck命令,不能包含在run块中。
默认配置下configure 已经配置了一个指定disk的通道,因此也可以不执行 allocate channle for maintenacne,另外oracle 也建议通过configure
来配置通道。
(2)编写执行脚本run_rman_backup.sh
oracle_sid=test
 oracle_base=/oracle
 oracle_home=$oracle_base/product/11.1.0/db_1
 export oracle_sid oracle_base oracle_home
 export ora_nls10=$oracle_home/nls/data
 path=$path:$oracle_home/bin:$home/bin
 ld_library_path=$oracle_home/lib:/lib:/usr/lib;
 export path
$oracle_home/bin/rman target /  msglog=/backup/oraclebaklog/bak.log cmdfile=/backup/shell/oraback0.sh
(3)加入到执行计划
crontab -e
 00 03 * * 0 /backup/shell/run_rman_back.sh
注意:相应的目录应该创建,对应的文件应该放在相应的目录下。
--------------------------------------推荐阅读 --------------------------------------
rman 配置归档日志删除策略
oracle基础教程之通过rman复制数据库
rman备份策略制定参考内容
rman备份学习笔记
oracle数据库备份加密 rman加密
--------------------------------------分割线 --------------------------------------
本文永久更新链接地址:

其它类似信息

推荐信息