文档章节

RMAN 学习过程之五,实战RMAN备份

JAVA枪手
 JAVA枪手
发布于 2017/09/06 10:41
字数 807
阅读 30
收藏 0

       经过前面的若干,我们已经了解并尝试了rman备份的一些命令,但是在实际环境中,不可能每次备份都要求DBA一条命令一条命令来敲,通过前章的学习我们已经立志一定要优化的干活,所以我们应该写好一段脚本,然后放在服务器端定时执行。DBA只需要时不时看看备份的结果就成了。

在写脚本之前,我们先明确一下我们的目标:

1 、每天夜间1点执行;

2 、数据库全备,同时备份控制文件及归档日志文件,备份文件保存至:D:\backup\目录下,并在完成归档日志文件备份后,自动删除已备份的归档日志;

3 、备份保留7天,过期则自动删除;

4 、保留操作日志备查;

以Windows环境为例(linux环境下与此基本类似,rman的脚本您甚至连改都不用改,就把调用rman脚本的命令行改改就行了):

1 、编写rman批处理文件

保存至: E:\oracleScript\backup\database_backup_jssweb.rman

RUN {

 CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF  7  DAYS;

 CONFIGURE CONTROLFILE AUTOBACKUP ON;

 CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO ¨d:/backup/%F¨;

 ALLOCATE CHANNEL CH1 DEVICE TYPE DISK FORMAT ¨d:/backup/%U¨;

 BACKUP   DATABASE SKIP INACCESSIBLE FILESPERSET 10

     PLUS ARCHIVELOG FILESPERSET 20

     DELETE ALL INPUT;

 RELEASE CHANNEL CH1;

 }

 ALLOCATE CHANNEL FOR MAINTENANCE DEVICE TYPE DISK;

 CROSSCHECK BACKUPSET;

 DELETE NOPROMPT OBSOLETE;

      上述的各项命令均在前面几个章节中提到过,如果有看着眼生的话,再回去翻翻前面。命令是都知晓地,可能有几个参数会不明白其意义,比如:BACKUP命令中的SKIT INACCESSIBLE参数,看下面:

SKIP 选项 说明

SKIP INACCESSIBLE :表示跳过不可读的文件。我们知道一些offline的数据文件只要存在于磁盘上就仍然可被读取,但是可能有些文件已经被删除或移到它处造成不可读,加上这个参数就会跳过这些文件;

SKIP OFFLINE :跳过offline的数据文件;

SKIP READONLY :跳过那些所在表空间为read-only的数据文件;

注意,你从网上搜索rman备份脚本,可能有些脚本中会出现一项:sql ¨alter system archive log current¨;这句是让archivelog日志归档,实际上完全没必要,我们在第三节的时候讲过,通过plus archivelog方式备份时,rman会自动对当前的archivelog进行归档。

2 、编写dos批处理

保存至:E:\oracleScript\backup\database_backup_jssweb.bat

设定要备份的数据库sid为jssweb,将日志按照日期输出到 E:\oracleScript\backup\logs\ 目录。

set oracle_sid=jssweb

rman target / msglog E:\oracleScript\backup\logs\%date:~0,10%.log cmdfile=E:\oracleScript\backup\database_backup_jssweb.rman

3 、设定执行计划

控制面板->任务计划中添加计划,运行E:\oracleScript\backup\database_backup_jssweb.bat,设定日程安排中的时间。

竣工!

说是实战,实际上演练的味道依然浓厚,谁让咱这是在测试呢。上述脚本已初具雏形,当然还应该再增加一些更合理的配置,比如根据您的数据库大小,适当调整通道数量,以及加上日期的判断,根据时间进行增量备份。

本文转载自:http://www.5ienet.com/note/html/rman/rman-backup-script-example.shtml

共有 人打赏支持
JAVA枪手
粉丝 7
博文 95
码字总数 15221
作品 0
东城
高级程序员
私信 提问
rman学习一

1 rman至少要在mount状态下才能工作,即:有控制文件。启动方式:rman target / 2 从rman中要执行os命令: host;就可以跳出rman exit;又回到rman 从rman中要执行sql命令: sql “sql命令”...

长平狐
2012/09/19
29
0
oracle-rman-list命令收集

参考Oracle Database Backup and Recovery Reference文档。 列出备份信息 列出详细备份信息:备份集(Backup Sets),镜像备份(image copies),proxy copies的信息。 lists backup sets, image...

sijinge
2017/11/07
0
0
rman report list crosscheck delete -rman常用命令

一、REPORT 1、报告目标数据库的物理结构 RMAN>REPORT SCHEMA 2、报告需要备份的数据文件 在执行备份之前,常常需要取得需要备份的数据文件信息,通过执行REPORT NEED BACKUP命令,可以列出需...

zhailibao
2014/02/28
0
0
catalog恢复目录介绍和配置

2.1、nocatalog介绍 nocatalog方式 就是用control file作为catalog,每一次备份都要往控制文件里面写好多备份信息,控制文件里面会有越来越多的备份信息。因此,当使用rman nocatalog方式备份...

PengChonggui
06/28
0
0
使用RMAN恢复全库、表空间、数据文件的方法总结

废话一句,恢复的前提是要有备份;所以说备份很重要。 对数据库进行完全介质恢复 1、启动数据库到加载状态 RMAN> SHUTDOWN IMMEDIATE; RMAN> STARTUP MOUNT; 2、执行恢复操作 RMAN> RESTORE ...

长平狐
2013/09/17
188
0

没有更多内容

加载失败,请刷新页面

加载更多

border实现等高布局

效果图 实现上图效果的全部html+css代码 <div class="box"> <nav> <h3 class="nav">导航1</h3> <h3 class="nav">导航2</h3> </nav> <section> <div cla......

呵呵闯
13分钟前
0
0
MaxCompute 表(Table)设计规范

表的限制项 表(Table)设计规范 表设计主要目标 表设计的影响 表设计步骤 表数据存储规范 按数据分层规范数据生命周期 按数据的变更和历史规范数据的保存 数据导入通道与表设计 分区设计与逻辑...

阿里云云栖社区
19分钟前
0
0
局域网共享文件读写的实现方式

代码片段 首先是设置共享目录,支持用户和密码等权限控制 然后我们可以使用Windows资源管理器操作共享目录下的文件 这中间隐藏了资源管理器帮我们建立目录映射和连接的过程,如果设置了用户名...

夏至如沫
29分钟前
2
0
Elasticsearch安装与配置

一、Docker安装ES 开发模式 可以使用以下命令快速启动Elasticsearch以进行开发或测试: $ docker run -p 9200:9200 -p 9300:9300 -d --name es -e "discovery.type=single-node" docker.ela...

吴伟祥
35分钟前
1
0
移动页面滚动穿透解决方案(荐)

移动页面滚动穿透解决方法目前有多种解决方案,我介绍下几种方案: 解决方案1:阻止冒泡。 //关键代码$(".sliders,.modals").on("touchmove",function(event){    event.preventDefau...

壹峰
35分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部