收藏 分享(赏)

第26章-RMAN备份和恢复数据库.ppt

上传人:weiwoduzun 文档编号:4301656 上传时间:2018-12-21 格式:PPT 页数:22 大小:141.02KB
下载 相关 举报
第26章-RMAN备份和恢复数据库.ppt_第1页
第1页 / 共22页
第26章-RMAN备份和恢复数据库.ppt_第2页
第2页 / 共22页
第26章-RMAN备份和恢复数据库.ppt_第3页
第3页 / 共22页
第26章-RMAN备份和恢复数据库.ppt_第4页
第4页 / 共22页
第26章-RMAN备份和恢复数据库.ppt_第5页
第5页 / 共22页
点击查看更多>>
资源描述

1、RMAN备份和恢复数据库,RMAN概述RMAN是Oracle提供的使用程序Recovery Manager,即恢复管理器,使用RMAN可以轻松实现数据库的所有备份任务。 RMAN在数据库服务器的帮助下实现数据库文件,控制文件,数据库文件和控制文件的映像副本,以及归档日志文件,数据库服务器参数文件的备份。 RMAN也允许使用脚本文件实现数据的备份与恢复,而且这些脚本保存在数据库内,而不需要编写基于OS的脚本文件。 RMAN备份的文件自动保存在一个系统指定的目录下,文件的名称也由RMAN自己维护,当实现数据恢复操作时,恢复指令简洁。 RMAN自动寻找需要的文件实现数据恢复。减少了在传统的导出导出程

2、序中人为错误的发生。,RMAN备份和恢复数据库,RMAN特点 使用RMAN的优点如下所示。 支持增量备份:在传统的备份工具中如EXP或EXPDP,只能实现一个完整备份而不能增量备份,RMAN采用被备份级别实现增量备份,在一个完整备份的基础上,采用增量备份,和传统地备份方式相比,这样可以减少备份的数据量。 自动管理备份文件:RMAN备份的数据是RMAN自动管理的,包括文件名字,备份文件存储目录,以及识别最近的备份文件,搜索恢复时需要的表空间、模式或数据文件等备份文件。 自动化备份与恢复:在备份和恢复操作时,使用简单的指令就可以实现备份与恢复,且执行过程完全由RMAN自己维护。 不产生重做信息:与

3、用户管理的联机备份不同,使用RMAN的联机备份不产生重做信息。,RMAN备份和恢复数据库,RMAN特点 使用RMAN的优点如下所示 恢复目录:RMAN的自动化备份与恢复功能应该归功于恢复目录的使用,RMAN直接在其中保存了备份和恢复脚本。 支持映像拷贝:使用RMAN也可以实现映像拷贝,映像是以操作系统上的文件格式存在,这种拷贝方式类似于用户管理的脱机备份方式。 新块的比较特性:这是RMAN支持增量备份的基础,这种特性使得在备份时,跳过数据文件中未使用过的数据块的备份,即只备份变化了的数据块,备份数据量的减少直接导致了备份存储空间需求和备份时间的减少。 备份的数据文件压缩处理:RMAN提供一个参

4、数,说明是否对备份文件进行压缩,压缩的备份文件以二进制文件格式存在,可以减少备份文件的存储空间。 备份文件有效性检查功能:这种功能验证备份的文件是否可用,在恢复前往往需要验证备份文件的有效性,以及需要回复的对象是否存在。,RMAN备份和恢复数据库,RMAN的系统结构组成 介绍RMAN的系统结构组成。 RMAN可执行程序:它是一个客户端工具,用来启动与数据库服务器的连接,从而实现备份与恢复的各种操作。 RMAN客户端:一旦建立了与数据库服务器的会话连接,RMAN可执行程序就创建一个客户端,通过客户端完成与数据库服务器之间的通信,完成各种备份与恢复操作的指令。RMAN客户端可以连接通过Oracle

5、 Net连接到可访问的任何主机上。 服务器进程:在RMAN建立了与数据库服务器的会话连接后,在数据库服务器端启动一个后台进程,它执行RMAN客户端发出的各种数据恢复与备份指令,并完成实际的磁盘或磁带设备的读写任务。 RMAN信息库:RMAN信息库记录了RMAN的一些信息,如备份的数据文件及副本的目录,归档的重做日志备份文件和副本,表空间和数据文件以及备份或恢复的脚本和RMAN的配置信息。默认使用数据库服务器的控制文件记录这些信息,读者可以通过转储的控制文件发现这些信息,如使用ALTER DATABASE BACKUP CONTROL FILE TO TRACE; 恢复目录:记录RMAN信息库的

6、信息。但是恢复目录需要事先配置,信息库既可以存储在数据库的控制文件中,也可以存储在恢复目录中。在Oracle中默认先将RMAN信息库写入控制文件,如果存在恢复目录则需要继续写到恢复目录。使用控制文件的不足是控制文件中记录RMAN信息库的空间有限,当空间不足时可能被覆盖掉。所以Oracle建议创建单独的恢复目录。这样也可以更好的发挥RMAN提供的新特性。,RMAN备份和恢复数据库,RMAN系统结构组成,RMAN的系统结构组成结构图,RMAN备份和恢复数据库,快闪恢复区(flash recovery area) 快闪恢复区是存储与备份和恢复数据文件以及相关信息的存储区。快闪恢复区保存了每个数据文件

7、的备份、增量备份、控制文件备份以及归档重做日志备份,Oracle也允许在快闪恢复区中保存联机重做日志的冗余副本以及当前控制文件的冗余副本,还有Oracle中闪回特性中的闪回日志也保存在快闪恢复区中。 在使用RMAN实现数据库的备份与恢复时,配置的快闪恢复区就是RMAN存储所有与备份相关的文件存储区,而此时的文件名不需要用户干预,Oracle使用OMF创建备份文件的文件名。 使用快闪恢复区的优点是,实现了备份文件的自动管理,使得备份与恢复数据库更简单(指令更简洁),并且可以集中管理磁盘空间。,RMAN备份和恢复数据库,快闪恢复区(flash recovery area) 查看当前数据库的快闪恢复

8、区参数,使用SHOW PARAMETER指令。 例子:查看快闪恢复区的参数信息。SQL show parameter db_recovery_file_dest_size 修改快闪恢复区的大小。SQL alter system setdb_recovery_file_dest_size=2g; 改变快闪恢复区目录SQL alter system setdb_recovery_file_dest = f:flashrecovery_area 使用了快闪恢复区后,可以通过数据字典v$recovery_file_dest来查看快闪恢复区的空间使用情况,以及文件数量,如下例所示。例子: 查看快闪恢复区

9、的位置以及空间使用信息。SQL col name for a30SQL set line 100SQL select name,space_limit,space_used,number_of_files2* from v$recovery_file_dest,RMAN备份和恢复数据库,如何建立RMAN到数据库的连接 使用数据库用户名和密码登录RMAN。D:rman恢复管理器: Release 11.1.0.6.0 - Production on 星期一 8月 31 22:10:05 2009Copyright (c) 1982, 2007, Oracle. All rights reserv

10、ed.RMAN connect target system/oracle,RMAN备份和恢复数据库,使用RMAN实现脱机备份 实现脱机备份首先需要使用RMAN登录的到数据库服务器,关闭数据库然后启动数据库到MOUNT状态,再执行BACKUP DATABASE指令备份整个数据库。 1.使用数据库用户名和密码登录RMAN D:rman target system/oracleorcl 2.在RMAN执行程序中,通过客户端指令关闭数据库,然后从RMAN加载数据到MOUNT状态。 RMAN shutdown immediate RMAN startup mount 3.使用BAKCUP DATABAS

11、E备份指令备份整个数据库,如没有配置快闪恢复区则需要使用FORMAT参数说明要备份的全库的备份集放在那个目录下。 RMAN backup database;,RMAN备份和恢复数据库,在备份整个数据库时,如启用了快闪恢复区,则如下方式备份,使用简单的BAKCUP DATABASE备份指令。 例子:启用快闪恢复区时备份整个数据库。RMAN backup database ;,RMAN备份和恢复数据库,使用RMAN备份控制文件 RMAN可以读单独备份控制文件,如果没有启用快闪恢复区则使用FORMAT参数指定控制文件的备份目录,如果启用了快闪恢复区,RMAN会自动将控制文件拷贝到快闪恢复区的备份集中

12、(BACKUPSET目录下)。 在没有启用快闪恢复区时备份控制文件。RMAN backup current controlfile format2 f:pumpbackup_ctl_%u.dbf; 在启用快闪恢复区时备份控制文件。RMAN backup current controlfile,RMAN备份和恢复数据库,RMAN的相关概念与配置参数 为了更好地使用RMAN进行更多类型的备份,我们先说明几个RMAN概念,这些概念也多次出现在备份输出过程中,如下所示。 备份集:备份集是一个逻辑数据集合,由一个或多个RMAN的备份片组成,备份片是RMAN格式的操作系统文件,包含一个数据文件、一个控制文

13、件或者归档日志文件。默认情况下,在执行RMAN的备份时,将产生备份文件的备份集,备份集只用RMAN可以识别,所以在恢复时必须使用RMAN来访问备份集实现恢复。 通道:RMAN是通过与数据库服务器的会话建立连接,通道代表这个连接,它指定了备份或恢复数据库的备份集所在的设备,如磁盘或磁带。 映像拷贝:映像拷贝是数据库文件的操作系统文件的一个备份,就如使用操作系统的COPY指令备份的文件一样。使用RMAN将默认创建备份集,它是数据集的一个逻辑数据结构,也可以设置备份类型为COPY使得使用RMAN的任何备份不产生备份集,而产生映像拷贝。 映像拷贝整个数据库RMAN BACKUP AS COPY DAT

14、ABASE 映像拷贝单个表空间RMAN BACKUP AS COPY TABLESPACE USERS 映像拷贝整个数据库一个数据文件RMAN BACKUP AS COPY DATAFILE 3,RMAN备份和恢复数据库,使用RMAN联机备份 在使用RMAN进行联机联机备份前,必须设置快闪恢复区,将DB_RECOVERY_FILE_DEST参数指定的目录作为归档重做日志备份的默认位置,并且将快闪恢复区的尺寸设置的足够大,然后需要将LOG_ARCHIVE_START参数的值设置为TRUE。 RMAN的联机备份使得数据库可以继续运行,而且通过RMAN可以备份整个数据库,一个表空间或者一个数据文件,

15、可以灵活选择备份的粒度, 三个前提: 1.设置快闪恢复区。 2. LOG_ARCHIVE_START参数的值设置为TRUE。 3.将数据库处于归档模式。,RMAN备份和恢复数据库,使用RMAN联机备份 使用BACKUP DATABASE联机备份整个数据库 RMAN backup database; 在备份整个数据库时,其实就是备份了数据文件,其中包含了当前的控制文件和参数文件。而重做日志文件或归档日志文件不是联机状态数据库全备份的内容,所以使用联机热备份的数据库在数据恢复时需要recover数据库,RMAN备份和恢复数据库,使用RMAN联机备份 使用BACKUP TABLESPACE联机备份一

16、个表空间 。RMAN backup tablespace users; 使用BACKUP DATAFILE联机备份一个数据文件。RMAN backup datafile 3 使用BACKUP CURRENT CONTROLFILE.联机备份当前控制文件 。RMAN backup current controlfile;,RMAN备份和恢复数据库,RMAN实现增量备份 解释两个级别的增量备份,一个是级别0的增量备份和级别1的增量备份,其中级别0的增量备份与全库备份相同。而级别1备份是执行的是差异备份,即对级别0备份后变化的数据做备份。显然级别0备份是级别1备份的数据基础。 使用RMAN实现增量备

17、份的级别0备份 RMAN backup incremental level 0 database; 使用RMAN实现增量备份的级别1备份 RMAN backup incremental level 1 database;,RMAN备份和恢复数据库,RMAN脚本对于长指令的RMAN备份操作Oracle提供了脚本语言功能,使得用户正对特定的任务编写备份脚本,然后将脚本存储在恢复目录或存储为文本文件。 创建RMAN备份脚本D:rman catalog rman_backup/rmanorcl target system/oracleorcl恢复管理器: Release 11.1.0.6.0 - Pr

18、oduction on 星期四 9月 3 09:33:07 2009Copyright (c) 1982, 2007, Oracle. All rights reserved.连接到目标数据库: ORCL (DBID=1219822601)连接到恢复目录数据库RMAN create script rman_backup2 sql alter system checkpoint;3 backup database format4 f:offline_backupback_%u.dbf;5 backup current controlfile format6 f:offline_backupbac

19、k_ctl_%u.dbf;7 已创建脚本 rman_backup 执行脚本。RMAN run execute script rman_backup;,RMAN备份和恢复数据库,如何使用操作系统文件存储RMAN指令,并在RMAN中直接调用该文件执行RMAN命令 。 1、创建一个rman_backup.rcv文件使用记事本工具编写,保存为.rcv文件) Sql alter system checkpoint; Backup database format f:offline_backupback_%u.dbf; Backup current controfile format f:offline_

20、backupback_ctl_%u.dbf; 调用操作系统文件执行RMAN指令。 D:rman target system/oracleorcl cmdfile rman_backup.rcv,RMAN备份和恢复数据库,RMAN实现脱机备份的恢复(NOARCHIVELOG模式) 如何使用RMAN脱机恢复整个数据库。 1、将数据库启动到NOMOUNT状态。 RMAN startup nomount; 2、从备份的控制文件中恢复控制文件 RMAN restore controlfile from autobackup; 3、将数据库切换到MOUNT状态。 RMAN alter database m

21、ount; 4、重建数据库 MAN restore database ; 5、打开数据完成数据库恢复。 RMAN alter database open;,RMAN备份和恢复数据库,RMAN实现脱机备份的恢复(ARCHIVELOG模式)。 此时如何恢复整个数据库: 1.在RMAN中关闭数据库并启动到MOUNT状态。 RMAN startup mount; 2.使用RMAN重建数据库 RMAN restore database; 3.恢复(RECOVER)数据库 RMAN recover database; 4.打开数据库完成全库的完全恢复 RMAN alter database open;,R

22、MAN备份和恢复数据库,联机热备份使用RMAN恢复 如何从联机热备份中恢复表空间。 1.启动RMAN。 D:rman target system/oracleorcl 2.将需要恢复的表空间脱机,本例中将恢复SYSAUS表空间。 RMAN sql alter tablespace sysaux offline; 3.重建表空间SYSAUX。 RMAN restore tablespace sysaux; 4.恢复表空间。 RMAN recover tablespace sysaux; 5.将表空间联机。 RMAN sql alter tablespace sysaux online;,RMAN

23、备份和恢复数据库,使用RMAN恢复数据文件。 恢复数据文件的过程和恢复表空间的过程一样,我们不给出具体的例子,只给出每一步的指令,读者可以当做作业完成。 启动RMAND:rman target system/oracleorcl 将要恢复的数据文件脱机。RMANsql alter datafile f:oracleproduct10.2.0oradataorclsysaux01.dbf offline; 重建数据文件。RMANrestore datafile f:oracleproduct10.2.0oradataorclsysaux01.dbf; 恢复数据文件。RMANrecover datafile f:oracleproduct10.2.0oradataorclsysaux01.dbf; 将数据文件联机。RMAN sql alter datafile f:oracleproduct10.2.0oradataorclsysaux01.dbf online;,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 网络科技 > 数据库

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报