1.RMAN的登陆退出命令:
方法一:$rman nocatalog 直接进入rman,以非 catalog 方式进行备份,也可以不要nocatalog
rman〉 connect target / 连接到 target database 需要配置ORACLE的操作系统登陆认证
方法二:rmantarget / rman target / nocatalog
方法三:rmantarget sys/oraclesys@bys 登陆远程数据库 或登陆本机的非操作系统验证库
方法四:rmantarget sys/oraclesys 登陆到默认本机数据库
方法五: rman target sys/oraclesys@192.168.0.181:1521/orcl
方法六: rmantarget sys/oraclesys@xporacle:1521/orcl
退出:exit
可以在RMAN中执行SHUTDOWN IMMEDIATE,STARTUP MOUNT等SQL命令
执行操作系统 命令需要加 host
执行SQL命令需要加 sql ,不能执行查询语句
2.RMAN内部查询命令
Show all 查看RMAN全局配置
RMAN>show channel;
RMAN> show device type;
RMAN> show default device type;
report schema 查看目标数据库物理结果,能显示出表空间及对应数据文件的信息
将配置重置为系统默认的命令是:CLEAR;关键字
RMAN> CONFIGURE CONTROLFILE AUTOBACKUP CLEAR;
old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
RMAN configuration parameters are successfully reset to default value
列出备份信息:
RMAN> list backup;
RMAN> list backup of database;
RMAN> list backup of tablespacetable_name;
RMAN> list backup of controlfile;
RMAN> list backup of spfile;
RMAN> list backupset id; 这里ID指的是备份集的ID号 比如2、3.
校验备份信息:
RMAN> crosscheck backup;
RMAN> crosscheck backup of database;
RMAN> crosscheck backup of tablespacesystem;
RMAN> crosscheck backup of controlfile;
RMAN> crosscheck backup of spfile;
RMAN> crosscheck archivelog all;
删除备份
在执行删除命令时有两点需要了解:
- 如果被判断为废弃的备份是一个单独数据文件的镜像复制,那么在执行DELETE命令时将直接删除这个镜像复制文件。
- 如果被判断为废弃的备份是一个备份集中的一部分,则必须等到整个备份集中所有其它文件都被废弃之后,才能删除这个备份集。
提示:
注意这里oracle对于obsolete和expired的定义与我们常规理解是相反的。Oracle的定义是这样的,对于手工删除的文件,物理上已经 不存在了的,在执行了crosscheck之后,oracle将其标记为expired,而对于那些超出了备份保留策略的备份集备份片,则标记为 obsolete。
delete noprompt backupset 8 ; --noprompt参数,直接删除,不提示让输入YES/NO
RMAN> report obsolete; 报告陈旧备份
RMAN> delete obsolete; -- 删除陈旧备份
RMAN> delete expired backup;
RMAN> delete expired copy ; 删除EXPIRED副本
RMAN> delete backupset 9;删除备份集编号9的
RMAN> delete backuppiece ¨F:\backup\DEMO_9.bak¨; 删除特定备份片
RMAN> delete backup; -- 删除所有备份
RMAN> delete copy;删除映象副本
RMAN> delete datafilecopy ¨F:\backup\DEMO_9.bak¨删除特定映象副本
RMAN> delete datafilecopy 1; 删除指定编号的COPY。。 RMAN> backup as copy tablespace 'USERS';
同时删除多个指定的备份集,用逗号隔开
RMAN> delete backupset 62,62,63,64,65,66,67;
using channel ORA_DISK_1
List of Backup Pieces
BP Key BS Key Pc# Cp# Status Device Type Piece Name
------- ------- --- --- ---------------------- ----------
62 62 1 1 AVAILABLE DISK /backup/ctl_c-2041679290-20130618-05
62 62 1 1 AVAILABLE DISK /backup/ctl_c-2041679290-20130618-05
63 63 1 1 AVAILABLE DISK /u01/app/oracle/flash_recovery_area/BYS001/backupset/2013_06_18/o1_mf_nnndf_TAG20130618T170650_8w08sc14_.bkp
64 64 1 1 AVAILABLE DISK /backup/ctl_c-2041679290-20130618-06
65 65 1 1 AVAILABLE DISK /u01/app/oracle/flash_recovery_area/BYS001/backupset/2013_06_18/o1_mf_nnndf_TAG20130618T171003_8w08zcpq_.bkp
66 66 1 1 AVAILABLE DISK /backup/ctl_c-2041679290-20130618-07
67 67 1 1 AVAILABLE DISK /backup/full/bys001arch_BYS001_818443809_72
Do you really want to delete the aboveobjects (enter YES or NO)?
删除归档日志:
RMAN> deletearchivelog all; 删除所有归档
RMAN> delete archivelog until time'sysdate-1' ; 删除当天之前的归档。-7是7天前。
RMAN> delete archivelog all delete input ;
RMAN> delete backupset 22 format = ¨¨d:\backup\%u.bak¨¨ delete input;
备份后删除输入对象
改变备份集的状态
RMAN> change backupset id unavailable;-- available
RMAN> change backupset id keep foreverlogs; 改为长期备份
RMAN> change backupset id keep untiltime 'sysdate+60' logs;
RMAN> change backupset id nokeep;
RMAN> report unrecoverable; 报告不可恢复的数据文件
3.3.RMAN内部配置语句解读
Show all 命令查询的全局配置:
1、CONFIGURE RETENTION POLICY配置备份保留策略
两种保留策略:
基于时间:
CONFIGURE RETENTION POLICY TO RECOVERYWINDOW OF 3 DAYS;
基于冗余数量:
CONFIGURE RETENTION POLICY TO REDUNDANCY 3;
也可以取消备份保留策略:
CONFIGURE RETENTION POLICY TO NONE;
2、CONFIGURE BACKUP OPTIMIZATION配置备份优化
备份优化,包括OFF和ON两个状态
打开备份优化:
CONFIGURE BACKUP OPTIMIZATION ON;
关闭备份优化:
CONFIGURE BACKUP OPTIMIZATION ON;
RMAN是如何判断要备份的文件是否需要被优化呢,这个算法就相当复杂了,而且可能影响优化算法的因素也非常多,假如某库在上午9点被执行过一次全库备 份,等下午3点再次执行全库备份时,备份的文件没有变动而且也已经被备份过时,才会跳过这部分文件。所以理论上备份优化仅对于只读表空间或offline 表空间起作用。当然对于已经备份过的archivelog文件,它也会跳过。
3、CONFIGURE DEFAULT DEVICE TYPE 配置IO设备类型
RMAN支持的IO设备类型有两种:磁盘(DISK)和磁带(SBT),默认情况下为磁盘。
使用磁盘设备:
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
使用磁带设置:
CONFIGURE DEFAULT DEVICE TYPE TO SBT;
在这里需要注意的一点是:如果IO设备发生变化,相关配置项也需要修改。例如:
RMAN> CONFIGURE DEVICE TYPE DISKPARALLELISM 2;
4、CONFIGURE CONTROLFILE AUTOBACKUP配置控制文件自动备份
是否自动备份,包含两个状态:OFF和ON
打开自动备份,如果使用了闪回区,控制文件自动备份会存储在闪回区。
CONFIGURE CONTROLFILE AUTOBACKUP ON
禁止自动备份
CONFIGURE CONTROLFILE AUTOBACKUP OFF
同时可以通过如下配置指定备份的控制格式,路径。例如:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FORDEVICE TYPE DISK TO 'd:/backup/%F';
在备份期间,将产生一个控制文件的快照,用于控制文件的读一致性,这个快照可以通过如下配置:
CONFIGURE SNAPSHOT CONTROLFILE NAME TO'D:/BACKUP/SNCFJSSWEB.ORA';
自动备份控制文件入SPFILE文件缺省格式及命名规则,
如:C-IIIIIIII-YYYYMMDD-QQ 其中:C 控制文件;IIIIIIII DBID;YYYYMMDD 时间戳;QQ 序号00-FF。十六进制表示。
是否设置自动备份控制文件的查看 :
在数据库中设置是否设置了自动备份控制文件
BYS|HELLO>select * from v$rman_configuration;
在数据库中通过视图查看自动备份的参数文件或控制文件。
BYS|HELLO>select * from v$backup_spfile;
在RMAN中查看 使用 rman target / 登陆并使用 list backup of spfile;
5、CONFIGURE DEVICE TYPE 设置并行备份
RMAN支持并行备份与恢复,也可以在配置中指定默认的并行程度。例如:
CONFIGURE DEVICE TYPE DISK PARALLELISM 2;
指定在以后的备份与恢复中,将采用并行度为2,同时开启2个通道进行备份与恢复,当然也可以在run中指定通道来决定备份与恢复的并行程度。
并行的数目决定了开启通道的个数。如果指定了通道配置,将采用指定的通道,如果没有指定通道,将采用默认通道配置。有点儿绕是吧,我来给你白话一把。
默认情况下,自动分配通道的并行度为1,如果你通过设置PARALLELISM设置了并行通道为2,那么在run块中,如果你没有单独通过ALLOCATE CHANNEL命令指定通道,它会默认使用2条并行通道,如果你在run命令块中指定了数个ALLOCATE CHANNEL,那么rman在执行备份命令时会以你设置的channel为准,而不管configure中配置了多少个并行通道。需要注意的一点是,在backup命令中有一个FILESPERSET参数,该参数是指rman建立的每个备份集中所能包含的备份片段(即磁盘文件)的最大数,该参数默认值为64,如果在执行backup命令时没有指定该参数值,那么rman会仅使用第一个通道来执行备份,其它通道将处于空闲状态。关于通道数与FILESPERSET值之间也有一个大小关系,逻辑稍显复杂这些就不多废话了,总之一条,filesperset值不要小于你设定的通道数。
6、CONFIGURE DATAFILE BACKUP COPIES 设置备份文件冗余度
7、CONFIGURE MAXSETSIZE 配置备份集的最大尺寸
该配置限制通道上备份集的最大尺寸。单位支持bytes,K,M,G。默认值是unlimited。
4. FORMAT字符串替代变量
configure channel 1 device type disk format '/home/oracle/%U';
备份集默认存放在/home/oracle/下,文件名格式为:%U
使用FORMAT参数时可使用的各种替换变量,如下:
%c:备份片的拷贝数(从1开始编号);
%d:数据库名称;
%D:位于该月中的天数 (DD);
%M:位于该年中的月份 (MM);
%F:一个基于DBID 唯一的名称,这个格式的形式为c-IIIIIIIIII-YYYYMMDD-QQ,其中IIIIIIIIII 为该数据库的DBID,YYYYMMDD 为日期,QQ 是一个1-256 的序列;
%n:数据库名称,并且会在右侧用x字符进行填充,使其保持长度为8;
%u:是一个由备份集编号和建立时间压缩后组成的8字符名称。利用%u可以为每个备份集生成一个唯一的名称;
%p:表示备份集中备份片段的编号,从1 开始编号;
%U:是%u_%p_%c的简写形式,利用它可以为每一个备份片段(即磁盘文件)生成一个唯一名称,这是最常用的命名方式;
%s:备份集的号;
%t:备份集时间戳;
%T:年月日格式(YYYYMMDD);s
注:如果在BACKUP命令中没有指定FORMAT选项,则RMAN默认使用%U为备份片段命名。
如:format 'f:\backup\orclfullback_%d_%t_%s'