1、查看RMAN配置的默认值:show all
以下配置为rman配置的相关语法,与相关介绍及如何清除配置,以及相关配置参数说明,如有错误希望指正。
RMAN> show all;
using target database control file instead of recovery catalog————————此语句在没有配置异机恢复目录时,会出现此说明
RMAN configuration parameters for database with db_unique_name RMAN1 are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default————————————————————————备份保留策略
CONFIGURE BACKUP OPTIMIZATION OFF; # default——————————————————————————————设置备份优化选项
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default————————————————————————————可以使磁盘(DISK),或者磁带(STB),默认为磁盘
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default———————————————————————————设置控制文件自动备份
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default———— 指定控制文件的备份路径与格式,format 指明备份文件的路径和文件名
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO (COMPRESSED) BACKUPSET; # default———两种类型的备份:备份集和镜像复制(COPY)--可压缩比例大约8:1~10:1。
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default————————————备份集也可以有多路复用(但映像文件不可以)
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default——————————归档日志的多路复用。
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 LOAD TRUE ; # default——配置压缩
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default——————————————————————————配置归档文件删除策略。
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2/db_1/dbs/snapcf_orcl.f'; # default——————指定快照位置
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO COMPRESSED BACKUPSET;
手动加入:
configure channel device type disk format '/oracle/orclarch/%U_%d';(可以加到配置中,也可以在run中指定,参数可以参考如下controlfile定义)
CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 300M;
现在针对上面的每一行给予说明,理解各行RMAN环境变量
#defalut 为默认设置
1、CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
RMAN设置了备份保留策略之后,RMAN会自动判断哪些备份集或镜像复制文件不必再保留。
这些备份文件将会被标记为“废弃(Obsolete)”,
(1)可以通过RMAN > REPORT OBSOLETE命令查看当前处于废弃状态的备份文件,
(2)也可以通过RMAN>DELETE OBSOLETE命令删除这些废弃的备份。
备份保留策略:两者只能选一,互斥
一个为时间策略,指定一个时间窗口,必须能恢复此时间段内任一一个时刻的数据
一个为冗余策略,规定至少有几个冗余的备份
(1)设置保留窗口为7天
RMAN> configure retention policy to recovery window of 7 days;
(2)保留5份可恢复的备份冗余
RMAN> configure retention policy to redundancy 5;
(3)清除策略(改回默认)
RMAN> configure retention policy clear; --清除策略并不是将策略删除,而是将策略恢复为#default REDUNDANCY 1
(4)不使用策略
RMAN> CONFIGURE RETENTION POLICY TO NONE; //RMAN此后不会将任何备份集或映像文件标记为obsolete状态。
2、CONFIGURE BACKUP OPTIMIZATION OFF; # default
(1)设置备份优化选项(optimization)可以在配置中设置备份的优化,如:
RMAN> CONFIGURE BACKUP OPTIMIZATION ON;
(2)如果优化设置打开,它只用于归档日志、只读或脱机表空间的数据文件,因为这些文件是不会变化的,备份集运行一个优化算法。跳过重复的备份文件,比如你要备份归档日志,此参数设为on可以避免重复备份,可大大节省空间和时间。
(3)备份优化选项依赖于RETENTION POLICY策略,如果启用优化,在已有足够相同文件副本的情况下(r+1),RMAN将不创建额外的文件副本。
(4)恢复默认
RMAN> CONFIGURE BACKUP OPTIMIZATION clear;
3、CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
备份设备有两种,可以使磁盘(DISK),或者磁带(STB),默认为磁盘
4、CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
(1)设置控制文件自动备份 (autobackup on)
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
off: 默认情况下,在备份system 表空间时,才会备份控制文件和spfile,并且,备份的路径和datafile路径一致
on: 在做任何文件的备份时,会自动备份控制文件和spfile,并且数据库的物理结构发生变化时,也自动备份controlfile。会自动备份到controlfile指定的路径 '/data/rmanbak/%F.ctl';
恢复默认:
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP clear;
5、CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
可以用如下的配置指定控制文件的备份路径与格式,format 指明备份文件的路径和文件名
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)
闪回恢复区
SQL> select file_type from v$flash_recovery_area_usage; FILE_TYPE -------------------- CONTROL FILE REDO LOG ARCHIVED LOG BACKUP PIECE IMAGE COPY FLASHBACK LOG FOREIGN ARCHIVED LOG 7 rows selected.
(1)配置控制文件自动备份路径及格式
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/backup/%F';
(2)查看控制文件自动备份格式
RMAN> show controlfile autobackup format;
(3)RMAN configuration parameters for database with db_unique_name RMAN1 are:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/u01/backup/%F';
(4)清除控制文件自动备份格式恢复默认
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK CLEAR;
6、CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
此处,RMAN的backup命令是可以产生两种类型的备份:备份集(BACKUPSET)和镜像复制(COPY)。
指定备份与恢复操作中的并行(PARALLELISM)度,即同时开启通道的数量进行备份和恢复
1)配置并行度为4
RMAN> CONFIGURE DEVICE TYPE DISK PARALLELISM 4;
2)改回默认值
RMAN> CONFIGURE DEVICE TYPE DISK clear;
并行的数目决定了开启通道的个数,当然也可以手动分配方式在RUN{}中指定通道来决定备份与恢复的并行程度。如果在RUN{}中指定了通道配置,将覆盖掉配置参数中指定的默认并行度。通常一个通道对应一个备份集。
提高RMAN性能和吞吐量,除了通道数,还可以通过一些参数控制输入数据文件数,备份集数,备份片数。
参数影响可有全局和局部两个层次,基本上分为:
PARALLELISM: 保存在RMAN存储库。
CONFIGURE CHANNEL: 更新配置,保存在RMAN存储库。
ALLOCATE CHANNEL: 限于run{},不保存。
BACKUP: 限于本次backup语句,不保存。
相关参数:
(1)FILESPERSET:每个备份集的最大输入文件数————————————在BACKUP语句中描述
(2)MAXOPENFILES:在给定时间内可以打开的最大输入文件数量————在ALLOCATE CHANNEL或CONFIGURE CHANNEL中描述
(3)MAXPIECESIZE:每个通道的备份片大小——————————————在ALLOCATE CHANNEL或CONFIGURE CHANNEL中描述
(4)MAXSETSIZE: 限制最大备份集大小————————————————在BACKUP语句中描述或配合参数中描述
(5)BACKUP DURATION:增加或减少完成备份的时间——————————在BACKUP语句中描述
(0)在RUN{}里分配通道,可以指定备份的数据文件和通道对应关系。
例1:
RMAN> RUN {
ALLOCATE CHANNEL c1 DEVICE TYPE sbt;
ALLOCATE CHANNEL c2 DEVICE TYPE sbt;
ALLOCATE CHANNEL c3 DEVICE TYPE sbt;
BACKUP
INCREMENTAL LEVEL = 0
FORMAT '/disk1/backup/df_%d_%s_%p.bak'
(DATAFILE 1,4,5 CHANNEL c1)
(DATAFILE 2,3,9 CHANNEL c2)
(DATAFILE 6,7,8 CHANNEL c3);
ALTER SYSTEM ARCHIVE LOG CURRENT;
}
(1)使用FILESPERSET参数限制备份集中的输入文件数,
指定每个备份集中一次可以包含输入文件最大数,该参数默认值为64。例2中约定每个备份集中备份8个文件。如果数据库有20个文件,那将只生成3个备份集,得到3个备份片,虽然开了4个通道,但并行度是3,有1个通道闲置。
例2:
RMAN> RUN{
ALLOCATE CHANNEL t1 DEVICE TYPE sbt;
ALLOCATE CHANNEL t2 DEVICE TYPE sbt;
ALLOCATE CHANNEL t3 DEVICE TYPE sbt;
ALLOCATE CHANNEL t4 DEVICE TYPE sbt;
BACKUP DATABASE FILESPERSET 8;
}
例2中假如取消ALLOCATE CHANNEL语句,则通道数按全局变量PARALLELISM指定,假定为1,有20个文件,FILESPERSET=8该是怎样的结果:一个通道干活,8个文件组成一个备份集,每备份集对一个备份片,完成一个备份集再接下一个备份集。串行的跑三趟。
(2)使用MAXPIECESIZE参数限制备份片大小(每个备份片.bkp文件最大是指定的值,如下300M),默认配置没有,手动添加,可以clear进行删除;
RUN{
CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 300M;
BACKUP datafile 2 format '/u01/myrman/%U.bak';
}
限定了最大备份片为300M,如果输出文件是500M(注意不是限制输入文件),则会在一个备份集中生成两个备份片。
恢复默认:
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK clear;
如果将
CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 300M;
换成
ALLOCATE CHANNEL c1 DEVICE TYPE DISK MAXPIECESIZE 300M;
就是全部和局部的区别
(3)使用maxsetsize参数限制备份集大小:
例4:
RMAN> backup database maxsetsize 500m format '/u01/myrman/%U.bak';
结果如何,一个通道产生了多个备份集,每个备份集对一个备份片。
注意:作为基本原则,一个备份集只能占一个通道,一个输入数据文件不能分成多个备份集,所以这里必须满足:最大输入文件size<1G.
使用SECTION SIZE子句设置多段备份(multisection backup)
通常一个数据文件只能占用一个通道,如果某个datafile太大,为提高备份效率,可以考虑采用多道关键字SECTION SIZE,并行化这个大文件的备份。例5中的数据文件约800M,被分成若干file section来备份, 它启动了三个通道,每个通道备份300M的file section,但三个通道产生一个备份集,包含三个压缩后的备份片。
例5:
RMAN> RUN{
ALLOCATE CHANNEL d1 DEVICE TYPE disk;
ALLOCATE CHANNEL d2 DEVICE TYPE disk;
ALLOCATE CHANNEL d3 DEVICE TYPE disk;
BACKUP AS COMPRESSED BACKUPSET DATAFILE 2 SECTION SIZE 300M format '/u01/myrman/%U.bak';
}
注意: SECTION SIZE隐含限定maxpiecesize,当maxpiecesize全局生效时不能使用SECTION SIZE。(考点)
所以,要使用SECTION SIZE,maxpiecesize只能在allocate channel中说明。
--自动配置的方法如下:
RMAN>configure default device type to disk;
RMAN>configure channel device type disk format ='/u01/backup/%U';
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK clear;
-- 手动分配方式如下:
run
{
allocate channel c1 type disk;
allocate channel c2 type disk;
backup database;
release channel c2; --释放通道
release channel c1;
}
7、CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default——————数据文件冗余备份
备份集也可以有多路复用(但映像文件不可以),最大值4,如为2就备份相同的2份,注意:TO STB和TO DISK是独立的,也就是说不能同时以DISK和TAPE多路复用。如果一定要duplex磁盘和磁带,使用backup backupset。
如:CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1;改为CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 3;
(1)可以自己定义位置
RMAN> backup database format '/data/rmanbak/%T_%n_%s_%d_%c'; 会放在一个文件夹中3份;
(2)可以自己定义多位置
RMAN> backup database format '/data/rmanbak/%T_%n_%s_%d_%c','/data/rmanbak02/%T_%n_%s_%d_%c','/data/rmanbak03/%T_%n_%s_%d_%c';
(3)可以单独使用RMAN命令可以覆盖这个参数.
RMAN> backup copies 2 datafile 4 format '/data/rmanbak/%T_%n_%s_%d_%c','/data/rmanbak02/%T_%n_%s_%d_%c';
(4)如果使用直接备份:RMAN>backup database,如果启用了多路复用模式,需要在format上加上%c,用于区别1,2,3序号。如下:
RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/data/rmanbak/%T_%n_%s_%d_%c.bkp';
如果不加%c,会提示:
8、CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default——————归档日志文件冗余备份
归档日志的多路复用。
和数据备份的多路复用一样
(1)备份可以开启多路复用,即多份保存,可以将配置设置为大于1的值
(2)备份路径中需要包含%c字符,以区别备份序号
RMAN> backup archivelog all format '/data/rmanbak/%T_%n_%s_%d_%c.arcbak';
配置归档日志冗余度为2
RMAN> CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 2;
--改回默认
RMAN> CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK CLEAR;
9、CONFIGURE MAXSETSIZE TO UNLIMITED; # default
配置限制通道上备份集的最大尺寸,单位支持 Bytes 、KB、MB、GB,默认值是unlimited,如果备份的数据文件超过了最大尺寸,则报错,如下图
配置单个最大文件为2G
RMAN> CONFIGURE MAXSETSIZE TO 2G;
改回默认
RMAN> CONFIGURE MAXSETSIZE CLEAR;
10、CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
配置备份加密算法
打开加密算法
RMAN> CONFIGURE ENCRYPTION FOR DATABASE ON;
关闭加密算法
RMAN> CONFIGURE ENCRYPTION FOR DATABASE OFF;
改回默认
RMAN> CONFIGURE ENCRYPTION FOR DATABASE CLEAR;
11、CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
配置加密算法
12、CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
配置压缩
配置压缩为high
RMAN> configure compression algorithm 'high';
改回默认
RMAN> configure compression algorithm clear;
run{
set compression algorithm 'high';
}
LOW等于LZO压缩。
MEDIUM 等于ZLIB 压缩。
HIGH 等于GZIP 压缩。
BASIC 等于 BZIP2 压缩。
13、CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
配置归档文件删除策略。
对于归档文件,一般来说,如果你仅是单实例的话(不是Data Guard环境),全备以前的archivelog就没有什么用处了,可以删除,但很多人不习惯在这里设置参数,更愿意使用脚本删除归档文件。
14、CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2/db_1/dbs/snapcf_orcl.f'; # default
rman 控制文件RMAN存储库与catalog做全同步的时候,需要建立一个controlfile的快照,这个参数指定快照存放位置。
指定快照位置
RMAN> configure snapshot controlfile name to '/u01/app/snapcf_orcl.f';
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28282660/viewspace-1403513/,如需转载,请注明出处,否则将追究法律责任。
文章评论