基于Rman的备份与恢复
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于Rman的测试
为了配合公司产品的功能测试,特完成此文档(公司产品相关测试部分已剔除)。本文档主要是介绍rman工具的基本使用,此处只做全库的备份,以及不完全恢复,数据库模式为归档模式。
1Rman工具的简单介绍
Rman全称Recover Manager是oracle提供的一款备份恢复数据库或数据库组件(表空间、数据文件、控制文件以及参数文件等)的工具。并且rman还可以对数据库的归档日志进行管理。
2 数据库备份与恢复
Rman提供两种备份模式,一种是将备份数据信息写入到本地的控制文件中,另一种是恢复目录方式:这种方式是将备份数据库信息写入到本地控制文件和catalog(恢复目录)中,oracle推荐使用第二种方式。Catalog一般创建在另外的一个数据库中,这样备份的数据库崩溃后不影响其恢复。使用第一种方式,如果数据库崩溃,而且没有控制文件的备份,这种情况下就没有办法进行恢复操作。这里使用恢复目录方式进行操作。
1)Catalog的创建
恢复目录所在数据库为rmandb,创建的恢复目录为tsp_rman,连接用户为rman/rman
a)创建恢复目录
Create tablespace tsp_rman
datafile ‘D:\ORACLE\PRODUCT\10.2.0\ORADATA\SCHINATEST\rman01.DBF’ size 120m;
b)创建用户
Create user rman identified by rman;
c)授权
Grant connect, resource, recovery_catalog_owner to rman;
2)连接到Rman
使用以下命令进行rman工具的连接:
连接时需要sysdba系统权限
Rman sys/oracle@schinatest catalog rman/rman@rmandb
说明:
Schinatest是准备备份的目标数据库,rmandb是恢复目录数据库
3)查看目标数据库的归档模式
以dba用户登录oracle,查看目标数据库的归档模式:此处是归档模式
SQL> archive log list;
图 3.1 查看归档模式
因为一般情况下,真正使用场景中的数据库都为归档模式,而且非归档模式下使用rman有一些限制,所以此处只做归档模式下的测试。如果数据库是非归档模式,需改成归档模式。
4)注册目标数据库
只有在恢复目录中注册的数据库才能进行备份与恢复操作,注册很简单,连接到rman工具后,使用register database命令进行注册即可
5)配置Rman的使用参数
使用show all命令显示rman的全部配置参数:
图 5.1 参数显示
这里只介绍测试中可能会用到的几个常用的配置参数
CONFIGURE DEFAULT DEVICE TYPE TO DISK; 存放备份集的设备,默认是disk,可配置成磁带等其它存储设备
CONFIGURE CHANN EL DEVICE TYPE DISK FORMAT '/…/oracle...%d_DB_%u_%s_%p';
是配置备份文件的备份路径和备份格式
CONFIGURE CONTROLFILE AUTOBACKUP OFF; 备份时是否对控制文件进行同时备份,默认否
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; 设置备份集的冗余数
CONFIGURE DEVICE TYPE DISK PARALLELISM 4;指定默认的并行程度
CONFIGURE BACKUP OPTIMIZATION ON;在配置中设置备份的优化
6)备份数据库
Rman支持单条命令的使用,同时也支持run程序块以及脚本的运行,例:
单个执行
RMAN>backup database;
运行一个命令块
RMAN> run {
2> copy datafile 10 to
3> '/oracle/prod/backup/prod_10.dbf';
4> }
脚本的使用不再举例
备份数据库,使用以下命令进行备份:
backup database plus archivelog;
说明:此处是进行全库的备份。Plus archivelog是指连同归档日志一起备份。这种备份方式是防止因为归档日志不慎被删除,而导致数据库恢复失败的情况。建议备份数据库时连同归档日志一起进行备份。
备份完成后,在目录D:\oracle\product\10.2.0\db_1\database(默认,可配置)会生成相应的备份集文件。
此处介绍几个常用的命令:
List backupset; 显示该恢复目录下的所有备份集文件信息
List backup summary; 以简要格式显示所有备份集信息
Report obsolete; 显示过期的备份集
图 6.1 显示过期的备份集文件
Crosscheck backup; 检查备份集是否正确,不正确标记为expired(过期)。过期的备份集可以进行删除。
图 6.2 检查过期的备份集
Delete expired backup; 删除过期的备份集
Delete backuppiece 101; 删除指定的备份集
Delete backup completed before 'sysdate-30'; 删除一个月前的备份集(批量删除)