开发者社区> 技术小美> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

RMAN兼容性、控制文件自动备份、保存时间、备份策略、备份脚本(二)

简介:
+关注继续查看

RMAN 程序的兼容性

RMAN 环境由以下5部分组成:
(1) RMAN executable
(2) Recovery catalog database
(3) Recovery catalog schema in the recovery catalog database
(4) Target database
(5) Auxiliary database (used forduplicate, duplicate for standby or tablespace point-in-time recovery)
说明: 1 、 4 是必须存在的。

一般来说,RMAN兼容性规则如下:
(1)RMAN 可执行文件的版本要和目标数据库的版本一致,但也有例外,具体参考下表。

表中的 目录模式版本 可以从RCVER 表中查看:

SQL> conn rman/rman@orcl; -- 用catalog 用户登录

已连接。

SQL> select * from rcver;

VERSION

------------

11.02.00.01

(2)RMAN catalog schema 的版本必须大于等于RMAN 可执行文件的版本。
(3)RMAN catalog对target database目标数据库向后兼容,支持早期版本的目标数据库
--当遇到兼容性问题时,会报如下错误:
RMAN-6186 -associated message: "PL/SQL package %s.%s version %s in %s database is too old"
RMAN-6429 -associated message: "%s database is not compatible with this version of RMAN".

RMAN 支持混合平台之间支持如下操作:
+ Active Database DUPLICATE
+ Backup-based DUPLICATE using image copies or backup sets
+ RESTORE and RECOVER using image copies or backup sets
(1)在Oracle 10gR2 之后的版本,支持如下操作系统之间的RMAN 操作:
Solaris x86-64 <-> Linux x86-64
HP-PA <-> HP-IA
Windows IA (64-bit) / Windows (64-bitItanium) <-> Windows 64-bit for AMD / Windows (x86-64)
(2) 在Oracle 11gR1 之后的版本,支持如下操作系统之间的RMAN 操作,当然这里也包含第一条里提到的10gR2后的组合。
Linux <-> Windows
(3)在11.2.0.2以上版本中,因为Bug 12702521的存在,SolarisSPARC (64-bit) <-> AIX (64-bit) 这2个版本之间不能进行RMAN 操作。


1 修改控制文件自动备份

rman中有一个比较好用的功能就是自动备份控制文件,而且同时还备份spfile文件。这对于不使用恢复目录而使用控制文件作为保存恢复信息的备份策略来说,尤为重要!

一般情况下有两种事件触发控制文件自动备份。
1、每个rman的backup或copy命令都会触发自动备份。也就是说每次执行部分备份或者完全备份时,都会执行控制文件和spfile文件的自动备份。备份信息输出中有 :完成 Control File and SPFILE Autobackup 。
2、数据库结构发生变化,比如增加表空间、改变表空间大小、增加日志文件组等等。alert日志中有,Starting control autobackup 。。
--查看数据库是否开启控制文件自动备份。
RMAN> show controlfile autobackup; 
--rman开启控制文件自动备份
RMAN> configure controlfile autobackup on;

2 修改控制文件保存的时间

控制文件保存的时间由参数CONTROL_FILE_RECORD_KEEP_TIME决定,默认值是7天。 我们可以改成0到365之间的任意值。 
SQL> select name,value from v$parameter where name='control_file_record_keep_time'; 
SQL> alter system set control_file_record_keep_time=20; 
SQL> show parameter control_file_record_keep_time

说明:如果控制文件里的记录被覆盖了,可以重新 catalog 注册。 如:
---ASM:
CATALOG START WITH '+disk'; # catalog allfiles from an ASM disk group 
--本地目录:最后一定要加/
CATALOG START WITH '/fs1/datafiles/'; #catalog all files in directory

3 配置备份默认的保存策略

3.1 通过recovery window
如:configure retention policy to recovery window of 7 days;
recover window是保持所有足够的备份,可以将数据库系统恢复到最近七天内的任意时刻。任何超过最近七天的数据库备份将被标记为obsolete。 
3.2 通过redundancy
备份保留策略的REDUNDANCY的值,就是最终备份保留的值。
configure retention policy to redundancy 5;
如果REDUNDANCY设置为5,那么Oracle会保留5个备份。

--保存策略重置为默认值(冗余为1)
configure retention policy clear;
--不应用任何保存策略。
CONFIGURE RETENTION POLICY TO NONE;

注意: 
配置保存策略不会导致自动删除备份,需要使用delete obsolete 命令才能删除过期的备份集。 在report obsolete 命令时显示到期的备份集。 如果列出的某个文件不能被删除,需要使用crosscheck 命令,否则,Oracle 删除delete obsolete命令输出的所有项。如:
report obsolete; 
delete noprompt obsolete; 
crosscheck backup; 
delete noprompt expired backup;

4 Nocatalog下的RMAN 增量备份脚本

4.1 全库加归档0级增量备份。
run{
sql 'alter system archive log current';
allocate channel ch1 type disk;
allocate channel ch2 type disk;
backup incremental level 0 database plus archivelog delete input
format '/u01/app/oracle/rmanbak/db_%d_%U'
tag=db_inc_0;
release channel ch1;
release channel ch2;
}

4.2 全库加归档1级增量备份。
run{
sql 'alter system archive log current';
allocate channel ch1 type disk;
allocate channel ch2 type disk;
backup incremental level 1 database plus archivelog delete input
format '/u01/app/oracle/rmanbak/db1_%d_%U'
tag=db_inc_1;
release channel ch1;
release channel ch2;
}

 

文章可以转载,必须以链接形式标明出处。


本文转自 张冲andy 博客园博客,原文链接:  http://www.cnblogs.com/andy6/p/6719678.html ,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
第二周编程作业 -Logistic Regression with a Neural Network mindset(二)
第二周编程作业 -Logistic Regression with a Neural Network mindset(二)
15 0
DL之AlDL之AlexNet:利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型)(二)
DL之AlexNet:利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型)
93 0
《Linux命令行与shell脚本编程大全》第二十五章 创建与数据库、web及电子邮件相关的脚本
25.1 MySQL数据库 /* 但是我在虚拟机上安装的时候居然不提示输入密码。 这个可以参考http://blog.csdn.net/sinat_21302587/article/details/76870457 导致登录的时候不知道账号密码。
1532 0
以.NET MF为依托,打造物联网时代轻量级嵌入式组态系统
请参见博文《 【物联网中间件平台-01】真正面向物联网的组态软件 YFIOs和YFHMI的前生今世》  
549 0
+关注
6819
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载