ORACLE-RMAN理论详解

1 RMAN的概述

1.1 功能

1)Recovery MANager,是备份和恢复数据库的管理工具
2)由server process进行备份和恢复
3)rman备份的文件种类
①datafile(database、tablespace、datafile)
②controlfile、spfile
③archivelog
4)在归档模式下支持非一致性备份(热备)
非归档方式的RMAN只能冷备,并在mount下做,但手工备份在mount下cp出来的备份对于RMAN是不可用的。
非归档方式的RMAN恢复只能还原最后一次备份

1.2 特点

在这里插入图片描述

1)备份时自动检查数据文件是否有坏块,因为RMAN是ORACLE BLOCK级备份技术
2)不备份临时表空间
3)可以实现增量备份
4)支持多通道并行工作
5)可以备份ASM文件

1.3 架构

在这里插入图片描述

1)可连接三类数据库:target database(备份的目标库),catalog database(目录数据库),duplicate database(复制数据库)。
2)存储设备:disk、tape(sbt磁带机)存放备份文件的设备
3)channel:目标库和存储设备之间备份恢复通道(服务进程)默认最少启动一个channel,可同时启动多个channel并发操作。
4)server process:用于备份和恢复的进程
5)rman的元数据:记录备份的信息(放在目标库的controlfile里)
6)catalog database :集中管理、存放备份的元数据,还可以存储备份脚本
7)MML:media manage layer介质管理层:用于管理磁带机的库文件或驱动

1.4 连接方法

1)本地连接
RMAN工具和target database在同一台服务器

[oracle@prod ~]$ rman target /

2)远程连接
RMAN客户端通过ORACLE_NET连接target database 在target database 启动监听,在client配置tnsnames.ora。

C:\>rman target sys/system@prod

1.5 备份类别

1)backupset:(备份集)
不备份datafile里从未使用块、可以实现增量备份(可以备份到disk和tape)。可以实施compression, 如果只启用一个channel,默认会把所有备份的datafile放入到一个backupset里,并且生成一个备份片backup piece。
2)image copy(映像文件):
实际上和手工cp 类似的,备份datafile所有的数据块, 不能作为增量备份的基础(即0级增量备份),只能备份到disk ,不能备份到tape,优点是可以省略还原步骤,恢复数据库速度快

2 RMAN的环境变量

在这里插入图片描述

含义解释:
2.1 CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
保留策略:用来决定哪些备份是有效的,而哪些备份是淘汰的。保留策略决定了备份是否为obsolete,obsolete有“淘汰”的意思,一旦某个备份成为obsolete了,RMAN还原备份时就不会选择它了。

有两种保留策略,互斥只能选其一。
在这里插入图片描述

1)冗余策略,给定至少需要保留最近的N份备份,更早的obsolete。
例如,如果有三个备份,而冗余数是2,那么最早的那个备份将被废弃。下面的命令将备份策略设置为2:

RMAN> configure retention policy to redundancy 2;

2)窗口策略,指定一个时间窗口,此策略将保证必须能恢复此时间段内任一个时刻的数据。
例如,假如我们指定恢复窗口是7天,假设今天是星期一,此前存在3个全备及归档日志。第一个全备是5天前生成的,第二个全备是十天前生成的,而最早一个全备是15天前备份的,
那么十天前生成的备份及之后的归档日志必须保留,而15天前的那个备份会成为废弃备份(obsolete)
在这里插入图片描述

关于此环境变量的几种常见设置:

RMAN>configure retention policy to recovery window of 7 days;   将恢复窗口配置为7天
RMAN>configure retention policy to none;   备份保持策略失效,此后不会将任何备份集或映像文件为obsolete状态。
RMAN>configure retention policy clear;   将恢复默认的保持策略
RMAN>configure retention policy to recovery window of 5 days;   保证至少有一个备份能恢复到Sysdate-5的时间点上,之前的备份将标记为Obsolete
RMAN>configure retention policy to redundancy 3;   至少需要有三个冗余的备份存在,如果多余三个备份以上的备份将标记为冗余

2.2 CONFIGURE BACKUP OPTIMIZATION OFF; # default
备份优化,需要说明的是,这个参数是在做全库备份时才会有效。如果优化设置打开,它只用于归档日志,只读或脱机表空间的数据文件,因为这些文件是不会变化的,备份集运行一个优化算法。全库备份时跳过重复的备份文件。
备份优化选项依赖于RETENTION POLICY策略,如果启用优化,在已有足够相同文件副本的情况下(r+1),RMAN将不创建额外的文件副本。

RMAN> configure backup optimization on;

2.3 CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
设备类型有两种,可以是磁盘(DISK),或者磁带(STB),默认为磁盘。
2.4 CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
设置控制文件自动备份RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
off: 默认情况下,在备份system表空间时,会备份控制文件和spfile
on: ①在做任何文件的备份时,会自动备份控制文件和spfile,②数据库的物理结构发生变化时,也自动备份controlfile。
从ORACLE DATABASE 11GR2开始,引入了控制文件自动备份延迟创建的特性。有个隐含参数_controlfile_autobackup_delay来控制这种行为,默认是300秒。

2.5 CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
给出控制文件自动备份的路径和命名方式,缺省是‘%F’,控制文件自动备份将放入flash_recovery_area目录下
也可以指定到其他地方
如: CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO ‘/u01/myrman/%F’;
关于%:
%告诉RMAN要使用的格式模板,以便备份文件的命名引用预定的格式,如下:
%c备份片的拷贝数
%D位于该月中的第几天(DD)
%M位于该年中的第几月(MM)
%F一个基于DBID唯一的名称,这个格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,
%d数据库名称其中IIIIIIIIII为该数据库的DBID,YYYYMMDD为日期,QQ是一个1-256的序列
%n数据库名称,向右填补到最大八个字符
%u一个八个字符的名称代表备份集与创建时间
%p该备份集中的备份片号,从1开始到创建的文件数
%U一个唯一的文件名,代表%u_%p_%c
%s备份集的号
%t备份集时间戳
%T年月日格式(YYYYMMDD)

第四行和第五行的环境变量是有关系。当第四行开启AUTOBACKUP ON后,控制文件备份将放入第五行指定的的目的地

这样好让RMAN在恢复控制文件备份时能自动找到控制文件备份。即和restore controlfile from autobackup命令配套。

2.6 CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
指定在以后的备份与恢复操作中并行度为2,即同时开启2个通道进行备份与恢复,此行设置可以和手动定义通道命令配合使用:

RMAN> CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT '/u01/myrman/%U.bak';
RMAN> CONFIGURE CHANNEL 2 DEVICE TYPE DISK FORMAT '/u01/myrman1/%U.bak';

注意:定义备份片的位置使用format子句大致有三种形式,以局部优先级更高为原则:
1)在环境变量里定义,如:

RMAN> CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT '/u01/myrman/%U.bak';

2)在run块中定义,如:

run{
allocate channel c1 type disk format '/u01/myrman/%s.bak';
};

3)在backup语句中定义,如:

backup datafile 4 format '/u01/myrman/%d_%s.bak';

2.7 CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
备份集也可以有多路复用(但映像文件不可以),最大值4,如为2就备份相同的2份(PPT-II-101)
注意:TO STB和TO DISK是独立的。也就是说不能同时以DISK和TAPE多路复用。如果一定要实现duplex到磁盘和磁带,可使用backup backupset.

RMAN> backup copies 2 datafile 4 format '/u01/myrman/%s_dbf','/u01/myrman1/%s_dbf';

手动命令可以覆盖这个变量的设置

2.8 CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
归档日志的多路复用,类似数据文件多路复用

2.9 CONFIGURE MAXSETSIZE TO UNLIMITED; # default
该配置限制通道上备份集的最大尺寸,单位支持Bytes、KB、MB、GB,默认值是unlimited

2.10 CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
配置备份集是否加密开关,默认关闭能够具体到某个表空间。

2.11 CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
加密,Transparent encryption透明的加密,带钱夹,Password encryption:不带钱夹

2.12 CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
RMAN里的压缩也叫binary compression,这是11g新增的参数(PPT-II-104-106), 压缩只能是针对backup set,有两种算法:‘BZIP2’和’ZLIB’.不要将RMAN的压缩和外部压缩实用程序混合在一起做

2.13 CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
对于归档文件,一般来说,如果你仅是单实例的话(不是Data Guard环境),全备以前的archivelog就没有什么用处了,可以删除,但很多人不习惯在这里设置参数,更愿意使用脚本删除归档文件。

2.14 CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_prod.f'; # default
rman控制文件RMAN存储库与catalog做全同步的时候,需要建立一个controlfile的快照,这个参数指定快照存放位置。

3 RMAN命令格式

3.1 交互式 (也叫stand alone方式)

RMAN> shutdown immediate;
RMAN>startup force mount;
RMAN>alter database open;
RMAN>sql 'alter system switch logfile';
RMAN>sql 'select * from scott.emp';  select不显示结果

3.2 批处理方式(也叫job方式)

RMAN>run {
shutdown immediate;
startup mount;
allocate channel c1 type disk;
allocate channel c2 type disk;
backup database format '/u01/myrman/%d_%s.bak';
alter database open;
release channel c1;
release channel c2;
}

3.3 基于EM方式(WEB方式)

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值