当前位置: 首页 > 编程日记 > 正文

如何 搭建 RMAN 备份平台

一. RMAN 的一些理论知识

RMAN Catalog 和 Nocatalog 的区别

http://blog.csdn.net/tianlesoftware/archive/2010/06/02/5641763.aspx

RMAN 系列(一)---- RMAN 体系结构概述

http://blog.csdn.net/tianlesoftware/archive/2010/06/09/5659701.aspx

RMAN 系列(二) ---- RMAN 设置和配置

http://blog.csdn.net/tianlesoftware/archive/2010/06/16/5674309.aspx

RMAN 系列(三) ---- 介质管理问题

http://blog.csdn.net/tianlesoftware/archive/2010/06/18/5678698.aspx

RMAN 系列(四) ---- RMAN 备份

http://blog.csdn.net/tianlesoftware/archive/2010/06/23/5687938.aspx

RMAN 系列(五) ---- RMAN 还原 与 恢复

http://blog.csdn.net/tianlesoftware/archive/2010/06/28/5700474.aspx

RMAN 系列(六) ---- RMAN 高级恢复

http://blog.csdn.net/tianlesoftware/archive/2010/07/09/5722174.aspx

RMAN 系列(七) ---- RMAN 维护

http://blog.csdn.net/tianlesoftware/archive/2010/07/12/5728097.aspx

RMAN 系列(八) ---- RMAN Listreport 命令

http://blog.csdn.net/tianlesoftware/archive/2010/07/12/5728116.aspx

RMAN 系列(九) ---- 调整RMAN备份与恢复操作的性能

http://blog.csdn.net/tianlesoftware/archive/2010/07/13/5732665.aspx

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

http://blog.csdn.net/tianlesoftware/archive/2010/07/16/5740630.aspx

二. RMAN 环境一些注意的配置

2.1 修改控制文件自动备份

可以用如下命令查看RMAN 的默认参数配置:

RMAN> show all;

db_unique_name 为 ORCL 的数据库的 RMAN 配置参数为:

CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default

CONFIGURE BACKUP OPTIMIZATION OFF; # default

CONFIGURE DEFAULT DEVICE TYPE TO DISK;

CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default

CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default

CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default

CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default

CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT   'F:/backup/orcl_%U.bak';

CONFIGURE MAXSETSIZE TO UNLIMITED; # default

CONFIGURE ENCRYPTION FOR DATABASE OFF; # default

CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default

CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOA

D TRUE ; # default

CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default

CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'D:/APP/ADMINISTRATOR/PRODUCT/11.2.0/DBHO

ME_1/DATABASE/SNCFORCL.ORA'; # default

注意,controlfile autobackup 这个参数默认是OFF的,即默认不自动备份,我们把这个参数改成自动备份:

RMAN> configure controlfile autobackup on;

旧的 RMAN 配置参数:

CONFIGURE CONTROLFILE AUTOBACKUP OFF;

新的 RMAN 配置参数:

CONFIGURE CONTROLFILE AUTOBACKUP ON;

已成功存储新的 RMAN 配置参数

改成自动以后,在数据文件有变化,或者备份数据库的时候,都会自动的备份控制文件和spfile文件。

  

改parallelism参数为2. 该参数默认值为1.

如:CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO BACKUPSET;

官网对这个参数的解释:

Configures the number of automatic channels of the specified device type allocated for RMAN jobs. By default, PARALLELISM is set to 1.

Suppose you set PARALLELISM for disk backups to 2 (see Example 2-42). If you set the default device type as disk, then RMAN allocates two disk channels when you run BACKUP DATABASE at the RMAN prompt. RMAN always allocates the number of channels set by PARALLELISM, although it may use only a subset of these channels.

Note: If you configure n manually numbered channels, then the PARALLELISM setting can be greater than or less than n. For example, you can manually number 10 automatic channels and configure PARALLELISM to 2 or 12.

To change the parallelism for a device type to n, run a new CONFIGURE DEVICE TYPE ... PARALLELISM n command. For example, you can change configure PARALLELISM to 3 for sbt and then change it to 2 as follows:

http://download.oracle.com/docs/cd/E11882_01/backup.112/e10643/rcmsynta010.htm#RCMRF113

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

控制文件保存的时间由参数CONTROL_FILE_RECORD_KEEP_TIME决定,默认值是7天。 我们可以改成0365之间的任意值。 

RMAN 采用nocatalog模式进行备份时,就会有一个问题。 当我们使用catalog模式的时候,RMAN 备份的信息都会存放到catalog目录里。 如果没有使用catalog目录,那么RMAN备份的信息就会保存到控制文件里。 RMAN 的这些备份信息对恢复来说非常重要,如果没有这些信息,是无法使用RMAN 进行恢复的。 所以,如果采用nocatalog模式,我们要主备备份控制文件,同时,要将控制文件记录的保存时间设置为不小于选中数据库备份的周期,否则就可能在备份介质上有数据库备份,但是控制文件不存在与备份相关的备份记录,在这种情况下,将无法恢复这些较早的文件。

SQL> select name,value from v$parameter where name='control_file_record_keep_time';

NAME                           VALUE

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

control_file_record_keep_time   7

SQL> alter system set control_file_record_keep_time=20;

系统已更改。

SQL> show parameter control_file_record_keep_time

NAME                                 TYPE        VALUE

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

control_file_record_keep_time        integer     20

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

备份策略影响影响恢复,如果备份集少,那么恢复能力也受到限制,如果备份集留的比较多,那么也会占用大量的空间。 所以要设置一个合适的周期,这个要根据磁盘空间大小和恢复需要来设置,一般有2种方法:

2.3.1  通过recovery window

如:configure retention policy to recovery window of 7 days;

recover window是保持所有足够的备份,可以将数据库系统恢复到最近七天内的任意时刻。任何超过最近七天的数据库备份将被标记为obsolete

2.3.2  通过redundancy

如:configure retention policy to redundancy 5;

redundancy 是为了保持可以恢复的最新的5份数据库备份,任何超过最新5份的备份都将被标记为redundancy它的默认值是1份。

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

report obsolete; 

delete noprompt obsolete; 

crosscheck backup; 

delete noprompt expired backup;

2.3.3 保存策略重置为默认值(冗余为1

configure retention policy clear;

2.3.4 不应用任何保存策略。

CONFIGURE RETENTION POLICY TO NONE;

2.4 部署备份脚本

大部分的Oracle 都是运行在Linux Unix上。 关于备份脚本,也分为全备和增量备份。 

参考blog

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

        http://blog.csdn.net/tianlesoftware/archive/2010/07/16/5740630.aspx

      WindowsRMAN备份脚本

http://blog.csdn.net/tianlesoftware/archive/2010/01/12/5181414.aspx

Linux平台的备份脚本中,策略比较完整。有nocatalog的全备和catalog的增量备份。 在数据库比较大的话,增量备份还是非常有用的。 Shell脚本在备份完成后,还单独的备份了控制文件和spfile文件。 另外删除过期的备份集。

2.5 删除归档日志的脚本

RMAN 备份的脚本里,我们添加了删除归档日志的选项,但是某些情况下还是需要部署删除归档日志的脚本。 比如在Data Guard 环境中,我们在主库做了RMAN 备份,备份会删除已经备份的归档日志,但是在备库中的归档日志就无法删除,还是需要通过脚本来定期的删除归档日志。 

删除的脚本参考我的Blog: 

Oracle 删除归档日志脚本

http://blog.csdn.net/tianlesoftware/archive/2010/01/20/5211659.aspx

小结,对于DBA来说,完整有效的备份是非常重要的,它能在关键时刻恢复我们的数据,或者减少数据丢失,所以对于生产库,一定要做好备份策略。 备份重于一切!

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

Blog: http://blog.csdn.net/tianlesoftware 

网上资源: http://tianlesoftware.download.csdn.net 

相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx 

DBA1 群:62697716(); DBA2 群:62697977

DBA3 群:63306533;     聊天 群:40132017

转载于:https://www.cnblogs.com/tianlesoftware/archive/2010/07/16/3610081.html

相关文章:

git更新代码报错,error: The following untracked working tree files would be overwritten by ch

git忽略大小写导致的, git config --add core.ignorecase true 转载于:https://www.cnblogs.com/newcbs/p/10732662.html

JavaScript_下_Dom

Dom对象 Dom对象:Document Object Model 文档对象模型。js是用来操作html的。 一个文档必须被加载到浏览器中,会按照HTML的层级结构转换成一个“家谱树”称为dom树。HTML文档里的所以的标签,属性,文本都会转换成dom树上的节点。 …

HDU 4300 Clairewd’s message

一道KMP的变式 本题仍是求最大前缀后缀,所以仍用KMP,但不同的是,本题有一个密码转换规则,不过好在题目中说了两段不重合,那么我们就可以在中间插入一个特殊符号*,保证求next数组时不会越过中线,…

GNS3模拟VPC注意几点

网上的GNS3入门到精通视频的确做得不错。现我写一下主要几点:1、创建MS lookback 适配器在添加硬件那里,并注意IP设置要在本地网卡同一子网,网关不用设置的。2、GNS3 的Dynamips目录的cygwin1.dll文件替代VPCS目录中文件。3、GNS3中的模拟PC先…

Windows Phone 7 Tip (5) -- App liftcycle

在新的trainning kit 中有一个例子解释的很清楚了: 1. Application_Launching:只有在新启动程序时触发 2. Application_Closing:只有在推出程序时触发--只有在程序mainpage时按硬后退键 3. Application_Activated:从home键或者其它…

npm i和npm install的区别

最近人用npm i来直接安装模块,但是有会报错,用npm install就不会报错,刚开始百思不得其解,它俩明明是同一个东西后来查npm的帮助指令发现还是没区别,npm i仅仅是npm install的简写: 实际使用的区别点主要如…

获取服务器路径的方式 【记录】

JSP页面获取服务器路径的方式 1.basePath方式 <% String path request.getContextPath(); String basePath request.getScheme()"://"request.getServerName()":"request.getServerPort()path"/"; %> 在url加入<%basePath%>如&…

系统安全设置部分项

1.设置合理的操作超时锁定&#xff08;10分钟以内&#xff09;&#xff0c;在恢复时需要重新鉴别。 开启连接超时 vim /etc/ssh/sshd_config ClientAliveInterval 120 //设置超时时间2分钟 ClientAliveCountMax 3 重启 /etc/init.d/sshd restart 2.设置TMOUT将自动在所设置…

简单的分级别写日志程序

/************************************************************************/ /* * 文件名称&#xff1a;write_log.cpp * 摘 要&#xff1a;此文件实现了普通WINDOWS程序中的日志功能 * 主要有以下特点&#xff1a; * 1. 根据日期创建日志文件目录&#xff0c;每天的日志分别…

达内——java变量

package xx;//为class文件分目录 import xx.xx//导入包中的类 public class 类名{ public static void main(String args[]){ } } 准备工作&#xff1a; jdk jre jvm gc idea pi 配置环境变量 变量名支持字母&#xff0c;数字&#xff0c;_和$&#xff0c;但是数字不能开头&…

JSON Web Tokens测试工具

JSON Web Tokens官方提供测试工具https://jwt.io某些静态资料需要链接google、twitter服务器&#xff0c;被墙无法访问。现在提供可以方法测试工具http://hingtai.cn:8000/转载于:https://www.cnblogs.com/birdstudio/p/7985617.html

oracle 分页写法

select * from (select ROWNUM RN ,TT.* from ( select * from YQ_FEED_BACK_MESSAGE WHERE MODEL_TYPE 3 AND FEED_BACK_TYPE4 order by FEED_BACK_DATE DESC)TT where rownum<5 )where RN >0

给GRUB添加新的项目

安装了win10&#xff0c;然后又安装了manjaro&#xff0c;最后又安装了Ubuntu。开机默认就是进入的Ubuntu的grub&#xff0c;然而我比较喜欢manjaro的grub主题。在bios中设置manjaro的引导为默认引导&#xff0c;但是此时manjaro的grub没有Ubuntu&#xff0c;进入到manjaro系统…

Netapp存储基础之WAFL, NVRAM, RAID, SnapShot

此章节是重点之重点。先讲基本概念。WAFL的全称是Write Anywhere File Layout. 从类似于其它UNIX的文件系统比如Berkeley Fast File System (FFS) 和 TransArc Episode file system. 它的核心理念是"文件任意地方写"。先说普通的文件系统&#xff0c;是由inode和data…

读取本地照片 以流的形式进行显示

获取到前端传来的文件名称&#xff0c;到相应的文件中去读取&#xff0c;通过流的形式写到响应体中。 /*** 显示图片 * getFeedBackPicture.do?picName* return*/RequestMapping(value"/viewPhoto/{photopath}")public void getFeedBackPicture(HttpServletRespons…

如何轻松搞定机构资格准入?

银联的“资格入网”虽涉及环节庞杂&#xff0c;但杂而有序&#xff0c;初次接触银联的机构极有可能不知道先从哪一步骤开始&#xff0c;很多用户甚至不知道该怎么填写材料&#xff0c;所以我整理了一份详细的入网流程&#xff0c;以供大家参考&#xff0c;希望能帮助到大家~ 入…

eclipse CreateProcess error=87 的解决办法

有的说是 ClassPath过长&#xff0c;有的说是Eclipse插件导致最后 在这里得到解决啦http://code.google.com/p/googleappengine/issues/detail?id1862In C:\google\appengine-java-sdk-1.3.1\config\user\ant-macros.xmlChange line 102from<fileset dir"{war}/WEB-IN…

学习javascript 非常好的博客

这个大牛写的非常好&#xff01;&#xff01;推荐一下 http://www.cnblogs.com/xiaohuochai/tag/javascript%E6%80%BB%E7%BB%93/default.html?page8 小火柴的蓝色理想 转载于:https://www.cnblogs.com/oxspirt/p/7987342.html

Flex自定义组件

项目中需要用到如下一个效果。下图中五个圆代表一个五孔的梅花管。客户在后台操作时需要编辑梅花管的每个子孔占用情况。客户的要求是&#xff1a;点击某一个孔&#xff0c;小孔变黑&#xff0c;表明此孔被占用&#xff1b;再次点击&#xff0c;则小孔再变成透明圆形&#xff0…

解决在SQL Server 2000的存储过程不能调试

本机上: 控制面板—>管理工具—>服务—>MSSQL&#xff08;默认的ID&#xff09;—>属性—>登陆—>选一个Windows帐户&#xff0c;填写密码&#xff0c;再重新启动SQL Server 2000就可以调试存储过程了。 看一看sql数据库的版本&#xff0c;如果是kf版则不能进…

springboot打成jar后获取classpath下的文件

直接上代码 JAR包用这个 //获取容器资源解析器ResourcePatternResolver resolver new PathMatchingResourcePatternResolver();// 获取远程服务器IP和端口try {//获取所有匹配的文件Resource[] resources resolver.getResources("static/images/faceSearch/*.*"…

thymeleaf : input/select/radio回显

thymeleaf中不用自己去写checked"checked" selected"selected"这种代码&#xff0c;他自己会选。 input <input type"text" class"form-control1" id"name" name"name" th:value"${user.name}"> …

Spark MLlib之使用Breeze操作矩阵向量

这下面的练习中&#xff0c;需要自己将spark的jar包 添加进来。 1.spark Mlib 底层使用的向量、矩阵运算使用了Breeze库。 scalaNLP 是一套 机器学习和数值技算的库。它主要是关于科学技术&#xff08;sc&#xff09;、机器学习&#xff08;ML&#xff09;和自然语言处理&#…

兄弟们,TechEd见!

马上就要TechEd啦&#xff01;11月6日到11月7日&#xff0c;在北京举办TechEd&#xff0c;嘿嘿&#xff0c;那就是中国最大的微软技术庙会&#xff01;盆盆是在2005年时第一次参加TechEd的&#xff0c;当时拿的是MVP的赠票。啥都不懂&#xff0c;就好比刘姥姥进了大观园&#x…

Java - 框架之 SpringBoot 攻略day01

Spring-Boot 攻略 day01 spring-boot 一. 基本配置加运行 1. 导入配置文件&#xff08;pom.xml 文件中&#xff09; <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1…

关于 RMAN 备份 数据块 一致性的讨论

今天和 杭州恒生 的一个朋友讨论一个RMAN 在备份时数据块一致性的问题。 关于RMAN 的备份原理参考blog&#xff1a; RMAN 系列&#xff08;一&#xff09;---- RMAN 体系结构概述 http://blog.csdn.net/tianlesoftware/archive/2010/06/09/5659701.aspx 先看官方文档上的一段话…

常用git命令

常用 Git 命令清单。专用名词的译名如下。半支烟 Workspace&#xff1a;工作区Index / Stage&#xff1a;暂存区Repository&#xff1a;仓库区&#xff08;或本地仓库&#xff09;Remote&#xff1a;远程仓库一、新建代码库 # 在当前目录新建一个Git代码库 $ git init# 新建一个…

springboot 读取配置文件内容的几种方式

1 使用 Environment 进行读取 env.getProperty("配置文件中的值") 2 使用注解的方式 PropertySource("classpath:application.properties") // 获取属性文件 //将其注解到类上 获取属性值 Value("${pictureSearchDemo.apiUrl}") // 获取属性…

Ubuntu9.10使用windows的字体的方法!

使用Ubuntu9.10已经有好几天了&#xff0c;安装字体算是我遇到的比较头疼的一件事&#xff0c;原本按照Ubuntu9.04的方法操作&#xff0c;发现无法使用windows中的字体&#xff0c;换了好几个方法&#xff0c;最终找打了解决方法&#xff0c;过程如下&#xff1a;1、新建一个文…

jmeter笔记(8)--关联

关联是jmeter中比较重要的一个点&#xff0c;在测试过程中有些数据是经常发生变化的&#xff0c;要获取这些数据&#xff0c;就需要使用关联&#xff0c;Jmeter可以通过“后置处理器”中的“正则表达式提取器”来处理关联。。 正则表达式提取器 1、在取样器下点击【添加】--【后…