RMAN 学习过程之五,实战RMAN备份
经过前面的若干,我们已经了解并尝试了rman备份的一些命令,但是在实际环境中,不可能每次备份都要求DBA一条命令一条命令来敲,通过前章的学习我们已经立志一定要优化的干活,所以我们应该写好一段脚本,然后放在服务器端定时执行。DBA只需要时不时看看备份的结果就成了。 在写脚本之前,我们先明确一下我们的目标: 1 、每天夜间1点执行; 2 、数据库全备,同时备份控制文件及归档日志文件,备份文件保存至:D:backup目录下,并在完成归档日志文件备份后,自动删除已备份的归档日志; 3 、备份保留7天,过期则自动删除; 4 、保留操作日志备查; 以Windows环境为例(linux环境下与此基本类似,rman的脚本您甚至连改都不用改,就把调用rman脚本的命令行改改就行了): 1 、编写rman批处理文件 保存至: E:oracleScriptbackupdatabase_backup_jssweb.rman RUN{ CONFIGURERETENTIONPOLICYTORECOVERYWINDOWOF 7 DAYS; CONFIGURECONTROLFILEAUTOBACKUPON; CONFIGURECONTROLFILEAUTOBACKUPFORMATFORDEVICETYPEDISKTO¨d:/backup/%F¨; ALLOCATECHANNELCH1DEVICETYPEDISKFORMAT¨d:/backup/%U¨; BACKUP DATABASESKIPINACCESSIBLEFILESPERSET10 PLUSARCHIVELOGFILESPERSET20 DELETEALLINPUT; RELEASECHANNELCH1; } ALLOCATECHANNELFORMAINTENANCEDEVICETYPEDISK; CROSSCHECKBACKUPSET; DELETENOPROMPTOBSOLETE; 上述的各项命令均在前面几个章节中提到过,如果有看着眼生的话,再回去翻翻前面。命令是都知晓地,可能有几个参数会不明白其意义,比如:BACKUP命令中的SKITINACCESSIBLE参数,看下面: SKIP 选项 说明 SKIPINACCESSIBLE :表示跳过不可读的文件。我们知道一些offline的数据文件只要存在于磁盘上就仍然可被读取,但是可能有些文件已经被删除或移到它处造成不可读,加上这个参数就会跳过这些文件; SKIPOFFLINE :跳过offline的数据文件; SKIPREADONLY :跳过那些所在表空间为read-only的数据文件; 注意,你从网上搜索rman备份脚本,可能有些脚本中会出现一项:sql¨altersystemarchivelogcurrent¨;这句是让archivelog日志归档,实际上完全没必要,我们在第三节的时候讲过,通过plusarchivelog方式备份时,rman会自动对当前的archivelog进行归档。 2 、编写dos批处理 保存至:E:oracleScriptbackupdatabase_backup_jssweb.bat 设定要备份的数据库sid为jssweb,将日志按照日期输出到 E:oracleScriptbackuplogs 目录。 setoracle_sid=jssweb rmantarget/msglogE:oracleScriptbackuplogs%date:~0,10%.log cmdfile=E:oracleScriptbackupdatabase_backup_jssweb.rman 3 、设定执行计划 控制面板->任务计划中添加计划,运行E:oracleScriptbackupdatabase_backup_jssweb.bat,设定日程安排中的时间。 竣工! 说是实战,实际上演练的味道依然浓厚,谁让咱这是在测试呢。上述脚本已初具雏形,当然还应该再增加一些更合理的配置,比如根据您的数据库大小,适当调整通道数量,以及加上日期的判断,根据时间进行增量备份。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- c – 为什么极端向下的大小派生类(多个虚拟继承)包括超类成
- 用Swift编写iOS应用中的交互手势动画
- ruby-on-rails – will_paginate ajax with fade
- 【React Native】Invariant Violation: Application Awesom
- ruby-on-rails – 无法在Cygwin上安装libv8 gem
- 通达OA 开发基于AJAX技术数据列表控件的智能表单(图文)
- 如何检查PostgreSQL配置文件的语法?
- xml 转换conf 基于python
- PostgreSQL的内存管理策略(1)
- 关于cocos2dx如何绑定c++的静态方法和类给lua调用