文档章节

Windows下ran_main备份脚本

小菜鸟要起飞
 小菜鸟要起飞
发布于 2015/04/03 11:01
字数 842
阅读 11
收藏 0

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;

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

设定要备份的数据库sidjssweb,将日志按照日期输出到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,设定日程安排中的时间。


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


如数据库在体积上都属于小型数据库(不超10G),即使每次备份都是全备也是可以接受的,所以在备份策略上能够非常灵活,或者说随意。对于那些数百G甚至过T的数据库,我想就需要很是花些心思来考虑备份策略的问题了,备份不仅仅只是在数据库崩溃时才会用到,备份是为了更好的恢复。所以我想做好备份与恢复之间开销的平衡应该是所有备份策略的终极目标

 

© 著作权归作者所有

共有 人打赏支持
小菜鸟要起飞
粉丝 0
博文 31
码字总数 8551
作品 0
海淀
程序员
私信 提问
ubuntu下设置开机自启动项

这里说明,Ubuntu 中系统没有了RH系统中的 chkconfig 命令 ! 可用一些小工具来管理 Ubuntu 的启动选项: 小工具 rcconf: #sudo apt-get rcconf #sudo apt-get install rcconf root 下运行:...

飓风2000
2015/01/21
0
0
windows2003上10G oracle的备份

今天需要在一个老的Windows2003上进行一个oracle10G的备份脚本的编写。 ip1为安装了10G数据库的Windows2003系统(D:dbbackup为数据库备份目录),ip2为没有安装的正常的Windows2003系统(d...

xitaotao
2016/01/06
0
0
C# 编写的SqlServer 数据库自动备份服务,带配置,功能强大

数据库自动备份服务,带配置,还算可以吧 周末抽时间,编写了一个这样的工具,可以让,对数据库不了解或不熟悉的人,直接学会使用备份,省时省力,同样,我也将一份,通过脚本进行备份的,也...

听风.
2018/08/06
0
0
Linux 下 MySQL 自动备份脚本

源码 mysqlDump.sh 使用说明 使用前先设置数据库连接参数 设置待备份的数据库名称 方式一:在脚本文件里修改变量 DB_NAME 方式二:运行脚本时动态传参,如 注意:脚本运行参数优先级高于脚本...

whoru
2018/10/12
0
2
shell判断oracle主备数据库备份脚本

1. 脚本如下 说明:按照客户要求,在主备数据库上同时部署脚本,自动判断是否是主库,如果是主库则进行备份,备库不需要备份,记录日志为备份库即可,以下脚本仅供参考,可以进一步优化。 脚...

roidba
2018/05/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

第11章 多线程

程序、进程、线程 程序(program)是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。 **进程(process)**是程序的一次执行过程或是正在运行的一个程序。动...

流小文
12分钟前
0
0
SpringBoot引入第三方jar包或本地jar包的处理方式

在开发过程中有时会用到maven仓库里没有的jar包或者本地的jar包,这时没办法通过pom直接引入,那么该怎么解决呢 一般有两种方法 - 第一种是将本地jar包安装在本地maven库 - 第二种是将本地j...

独钓渔
今天
2
0
五、MyBatis缓存

一、MyBatis缓存介绍 缓存的使用可以明显的加快访问数据速度,提升程序处理性能,生活和工作中,使用缓存的地方很多。在开发过程中,从前端-->后端-->数据库等都涉及到缓存。MyBatis作为数据...

yangjianzhou
今天
2
0
最近研究如何加速UI界面开发,有点感觉了

最近在开发JFinal学院的JBolt开发平台,后端没啥说的,做各种极简使用的封装,开发者上手直接使用。 JBolt开发平台包含常用的用户、角色、权限、字典、全局配置、缓存、增删改查完整模块、电...

山东-小木
今天
3
0
《月亮与六便士》的读后感作文3000字

《月亮与六便士》的读后感作文3000字: 看完英国作家威廉.萨默塞特.毛姆所著《月亮与六便士》(李继宏译),第一疑问就是全书即没提到“月亮”,也没提到“六便士”。那这书名又与内容有什么...

原创小博客
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部