oracle典型的增量备份方案

一个典型的增量备份案例,是按照一周为一个周期来进行备份:

|-------|---------|
| 时间 | 备份级别 |
| 星期天晚上 | level 0 |
| 星期一晚上 | level 2 |
| 星期二晚上 | level 2 |
| 星期三晚上 | level 1 |
| 星期四晚上 | level 2 |
| 星期五晚上 | level 2 |
| 星期六晚上 | level 2 |

1、level 0备份脚本

run{

allocate channel d1 device type disk;

backup incremental level 0 database

format '/oracle/rman/lev0_%d_%U'

tag='level0'

channel=d1

include current controlfile;

sql 'alter system archive log current';

backup archivelog all format

'/oracle/rman/lev0_log_%d_%U' delete all input;

release channel d1;

}

2、level 1备份脚本

run{

allocate channel d1 device type disk;

backup incremental level 1 database

format '/oracle/rman/lev1_%d_%U'

tag='level1'

channel = 'd1'

include current controlfile;

sql 'alter system archive log current';

backup archivelog all format

'/oracle/rman/lev1_log_%d_%U' delete all input;

release channel d1;

}

3、level 2备份脚本

run{

allocate channel d1 device type disk;

backup incremental level 2 database

format '/oracle/rman/lev2_%d_%U'

tag='lev2'

channel=d1

include current controlfile;

sql 'alter system archive log current';

backup archivelog all format

'/oracle/rman/lev2_log_%d_%U' delete all input;

release channel d1;

}

这三个备份脚本对应文件lev0.rcv、lev1.rcv、lev2.rcv

采用sh文件来调用这三个级别的备份。三个sh的文件可命名为lev0.sh、lev1. sh、lev2. sh。内容分别为:

lev0.sh

rman cmdfile=/oracle/scripts/lev0.rcv log=/oracle/scripts/lev0.log

lev1.sh

rman cmdfile=/oracle/scripts/lev1.rcv log=/oracle/scripts/lev1.log

lev2.sh

rman cmdfile=/oracle/scripts/lev2.rcv log=/oracle/scripts/lev2.log

采用crontab来制定计划任务

00 23 * * 0 /oracle/backup/lev0.sh

00 23 * * 2 /oracle/backup/l lev2.sh

00 23 * * 2 /oracle/backup/l lev2.sh

00 23 * * 1 /oracle/backup/l lev1.sh

00 23 * * 2 /oracle/backup/l lev2.sh

00 23 * * 2 /oracle/backup/l lev2.sh

00 23 * * 2 /oracle/backup/l lev2.sh

相关推荐
睡觉的时候不会困5 小时前
Redis 主从复制详解:原理、配置与主从切换实战
数据库·redis·bootstrap
程序员的世界你不懂7 小时前
【Flask】测试平台开发,新增说明书编写和展示功能 第二十三篇
java·前端·数据库
自学也学好编程7 小时前
【数据库】Redis详解:内存数据库与缓存之王
数据库·redis
JAVA不会写7 小时前
在Mybatis plus中如何使用自定义Sql
数据库·sql
IT 小阿姨(数据库)7 小时前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
ChinaRainbowSea8 小时前
7. LangChain4j + 记忆缓存详细说明
java·数据库·redis·后端·缓存·langchain·ai编程
小马学嵌入式~9 小时前
嵌入式 SQLite 数据库开发笔记
linux·c语言·数据库·笔记·sql·学习·sqlite
Java小白程序员9 小时前
MyBatis基础到高级实践:全方位指南(中)
数据库·mybatis
Monly219 小时前
人大金仓:merge sql error, dbType null, druid-1.2.20
数据库·sql
不宕机的小马达10 小时前
【Mysql|第一篇】Mysql的安装与卸载、Navicat工具的使用
数据库·mysql