一、RMAN全备份

在数据量比较小、或者数据库服务器性能很强大的情况下,可以每天进行一次全备份。

全被策略如下

1、crontab定时任务,避开业务繁忙时段

###########################################
## RMAN BACKUP
##
###########################################
0 4 * * * /u01/dba_scripts/rman/rman_full.sh

2、RMAN备份脚本

cat rman_full.sh.bak
source /home/oracle/.bash_profile
DAY_TAG=`date +"%Y-%m-%d"`
backdir1=/u03/paydb/backup/rman/
rm -rf $backdir1/*
rman target / nocatalog msglog /u01/dba_scripts/rman/log/fullback_$DAY_TAG.log<<EOF
run{
crosscheck backup;
delete noprompt expired backup;
allocate channel d1 type disk maxpiecesize = 3500M;    ----由于备份后,要把备份文件放到阿里云的OSS存储上面,但是OSS存储有4GB大小限制,因此,我们也要
allocate channel d2 type disk maxpiecesize = 3500M;    ----限制RMAN备份片的大小。
#crosscheck archivelog all;
#delete noprompt expired archivelog all;
#crosscheck backup;
#delete noprompt expired backup;
backup as compressed backupset database format '$backdir1/full_%d_%T_%t_%s_%p';
sql 'alter system archive log current';
backup as compressed backupset filesperset 10 format '$backdir1/arch_%d_%T_%t_%s_%p' archivelog all;
backup current controlfile format '$backdir1/ctl_%d_%T_%t_%s_%p';
release channel d1;
release channel d2;
#report obsolete;
#delete noprompt obsolete;
}
EOF

二、一级增量备份

1、crontab定时任务,避开业务繁忙时段

#***********************************
#    rman incremental backup   #
#        2017/8/7                         #
#***********************************
0 4 * * 0    /u03/rman_0_level_full.sh
0 4 * * 1-6  /u03/rman_1_level_incremental.sh

2、备份脚本

1)周末0级全备

cat rman_0_level_full.sh
source /home/oracle/.bash_profile
DAY_TAG=`date +"%Y-%m-%d"`
week=`date +%w`
backdir1=/u03/paydb/backup/rman/"$week"
rm -rf $backdir1/*
rman target / nocatalog msglog /u01/dba_scripts/rman/log/fullback_$DAY_TAG.log<<EOF
run{
crosscheck backup;
delete noprompt expired backup;
allocate channel d1 type disk maxpiecesize = 3500M;
allocate channel d2 type disk maxpiecesize = 3500M;
#crosscheck archivelog all;
#delete noprompt expired archivelog all;
#crosscheck backup;
#delete noprompt expired backup;
backup incremental level 0 as compressed backupset database format '$backdir1/full_%d_%T_%t_%s_%p';
sql 'alter system archive log current';
backup as compressed backupset filesperset 10 format '$backdir1/arch_%d_%T_%t_%s_%p' archivelog all;
backup current controlfile format '$backdir1/ctl_%d_%T_%t_%s_%p';
release channel d1;
release channel d2;
#report obsolete;
#delete noprompt obsolete;
}
EOF
2)周一到周六,针对周末的0级全备,每天进行1级增量备份
cat rman_1_level_incremental.sh
source /home/oracle/.bash_profile
DAY_TAG=`date +"%Y-%m-%d"`
week=`date +%w`
backdir1=/u03/paydb/backup/rman/"$week"
rm -rf $backdir1/*
rman target / nocatalog msglog /u01/dba_scripts/rman/log/fullback_$DAY_TAG.log<<EOF
run{
crosscheck backup;
delete noprompt expired backup;
allocate channel d1 type disk maxpiecesize = 3500M;
allocate channel d2 type disk maxpiecesize = 3500M;
#crosscheck archivelog all;
#delete noprompt expired archivelog all;
#crosscheck backup;
#delete noprompt expired backup;
backup incremental level 1 as compressed backupset database format '$backdir1/full_%d_%T_%t_%s_%p';
sql 'alter system archive log current';
backup as compressed backupset filesperset 10 format '$backdir1/arch_%d_%T_%t_%s_%p' archivelog all;
backup current controlfile format '$backdir1/ctl_%d_%T_%t_%s_%p';
release channel d1;
release channel d2;
#report obsolete;
#delete noprompt obsolete;
}
EOF

Oracle数据库备份策略:全备与增量备份的更多相关文章

  1. XtraBackup全备与增量备份

    一.XtraBackup安装 下载地址:http://www.percona.com/downloads/XtraBackup/XtraBackup-2.2.8/source/ 安装步骤: ===== ...

  2. MySQL 数据库备份策略:全备与增量备份

    一.备份策略1.周日全备份,周一至周六增量备份2.全备份目录/u03/backup/innobackup/full_backup3.增量备份目录/u03/backup/innobackup/incre ...

  3. mysql全备和增量备份以及恢复过程(percona工具)

    实验环境 系统环境,内核版本和xtrabackup工具版本 [root@linux-node1 mysql]# cat /etc/redhat-release CentOS Linux release ...

  4. Linux 平台下 RMAN 全备 和 增量备份 shell 脚本

    转:http://blog.csdn.net/tianlesoftware/article/details/5740630 全备脚本 以 nocatalog 模式为例: Shell 脚本: ##### ...

  5. mysql全备、增量备份脚本

     1.mysql全量备份及定时删除备份文件脚本 #!/bin/bash v_user="root" v_password="mysql" backup_date ...

  6. mysqldump全量备份+mysqlbinlog二进制日志增量备份

    日常的数据备份及恢复测试,是DBA工作重中之重的事情,所以要做好备份及测试,日常的备份常见有mysqldump+binlog备份.xtrabackup+binlog备份,无论那一种,几乎都少不了对bi ...

  7. mysql备份脚本,每天执行一次全量备份,三次增量备份

    线上一个小业务的mysql备份 全量备份 #!/bin/bash #crete by hexm at -- #scripte name : full_backup.sh #descriptioni : ...

  8. oracle数据库冷备中的手工备份和恢复

    我的操作系统是red hat5.5 32位系统oracle11g 以我的系统为例: 冷备状态下,数据库必须是关闭的,但是我们现在要做一个实验,在开库的状态下分别查询出: 1.show paramete ...

  9. mysql备份与还原,增量备份;使用ibd和frm文件恢复数据

    主要用的:binlog.mysqldump.mysqlbinlog 参考: https://www.cnblogs.com/Cherie/p/3309456.html https://blog.csd ...

随机推荐

  1. Error updating database:线程异常

    SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".SLF4J: See http://www.slf4 ...

  2. nodejs导出excel

    //导出Excel var nodeExcel = require("excel-export"); var fs = require("fs"); var c ...

  3. Spring 拦截器实现+后台原理(HandlerInterceptor)

    过滤器跟拦截器的区别 spring mvc的拦截器是只拦截controller而不拦截jsp,html 页面文件的.这就用到过滤器filter了,filter是在servlet前执行的,你也可以理解成 ...

  4. 20170921xlVBA_SQL蒸发循环查询2

    'ARRAY("1991","1992","1993","1994","1996","19 ...

  5. vuex之单向数据流

    单向数据流 State State 用来存状态.在根实例中注册了store 后,用 this.$store.state 来访问. Getters Getters 从 state 上派生出来的状态.可以 ...

  6. Kindergarten CodeForces - 484D (贪心,好题)

    大意: 给定序列, 求划分为若干段, 使得总贡献最大, 每段的贡献为max-min 可以发现最优解一定是连续一段递增或递减, 然后dp即可. #include <iostream> #in ...

  7. 77. Combinations (java 求C(n,k)的组合,排除重复元素)

    题目: Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. 解析:同求全 ...

  8. 【Java】【8】StringUtils中isNotEmpty和isNotBlank的区别

    前言: 1,StringUtils.isNotEmpty(str)和StringUtils.isNotBlank(str)都是用来做非空判断的 2,通常用isNotBlank 3,import org ...

  9. python-django rest framework框架之分页

    1. 以前django做的分页组件当数据量特别大的时候,性能不是很高,有以下三种方式处理:        a. 记录当前访问页的最后一条数据id,往后取多少条        b. 最多显示120页   ...

  10. 2.两数相加(Add Two Numbers) C++

    第一想法是顺着题目的原因,将两链表分别转化为一个数字,再将数字相加,然后把结果转化为字符串,存到答案链表中.但是数据太大会溢出! 所以,要在计算一对数字的过程当中直接存储一个结果,注意结果大于9时进位 ...