一、RMAN工具概述
1. RMAN工具的一般用途
RMAN工具除了能够完成传统的备份和恢复,还能在高可用性环境的复制、迁移中发挥重要的作用,RMAN也可以对ASM文件进行拷贝和备份。
RMAN能跟踪备份过程、记录备份信息,是一种自管理的备份工具,不需要DBA手动管理和维护备份信息(RMAN是一个客户端工具)。
2. RMAN工具中的名词
目标数据库:指需要备份的数据库。
辅助实例:备库端的实例,例如:RMAN在连接到目标数据库的同事还能够连接到辅助实例,将目标数据库复制到辅助实例创建辅助数据库(使用RMAN创建Standby数据库就是典型的数据库复制的例子)。
恢复目录:备份信息称为RMAN的元数据,它默认被存放在目标数据库的控制文件中,也可以使用单独的数据库来存放这些RMAN元数据信息,这个单独的数据库称为恢复目录数据库。
3. RMAN能够备份的文件
执行如下语句查看RMAN工具支持备份的文件类型:
SQL> SELECT * FROM v$RMAN_BACKUP_TYPE;
WEIGHT INPUT_TYPE
---------- ---------------------------------------
1 BACKUPSET
2 SPFILE
3 CONTROLFILE
4 ARCHIVELOG
5 DATAFILE INCR
6 DATAFILE FULL
7 DB INCR
8 RECVR AREA
9 DB FULL
9 rows selected.
SQL>
注意:RMAN无法备份联机Redo日志、网络配置文件、密码文件、外部表等。
4. 闪回恢复区
闪回恢复区:即为Oracle自动化管理设置的特定区域,该区域存储包括:归档日志文件、RMAN备份文件、RMAN自动备份文件等,闪回恢复区使用OMF方式管理文件。
a. 闪回恢复区的参数
DB_RECOVERY_FILE_DEST指定闪回恢复区的目的地;
DB_RECOVERY_FILE_DEST_SIZE指定闪回恢复区能够使用的空间最大值;
注意:如果DB_RECOVERY_FILE_DEST_SIZE参数设置的过小,即使存储目的地还有剩余空间,使用的时候也无法超过这个限制值。
b. 使用ASM作为闪回恢复区
如果使用ASM作为闪回恢复区存储的目的地,那么在告警日志文件中会看到如下告警信息:
SUCCESS: diskgruop FRA1 was mounted
SUCCESS: diskgroup FRA1 was dismounted
NOTE:ASMB process exiting due to lack of ASM file activity
Stopping background process RBAL
注:由于数据库只在归档的时候才会用到闪回恢复区对应的磁盘组,使用的频率不高,因此Oracle只能使用的时候会加载闪回恢复区对应的磁盘组,其它时候会卸载该磁盘组,上面的日志就是记录了磁盘的加载和卸载的过程,属于正常现象。
c. 闪回恢复区数据字典
通过查询V$FLASH_RECOVERY_AREA_USAGE视图可以看出闪回恢复区的使用情况
SQL> SELECT FILE_TYPE,PERCENT_SPACE_USED FROM V$FLASH_RECOVERY_AREA_USAGE;
FILE_TYPE PERCENT_SPACE_USED
------------------------------------------------------------ ------------------
CONTROL FILE .41
REDO LOG 4.69
ARCHIVED LOG 0
BACKUP PIECE 0
IMAGE COPY 0
FLASHBACK LOG 0
FOREIGN ARCHIVED LOG 0
7 rows selected.
SQL>
5. RMAN环境变量
注意设置NLS_DATE_FORMAT=’yyyy-mm-dd hh24:mi:ss’、NLS_LANG=”SIMPLIFIED CHINESE”_CHNIA.ZHS16GBK两个参数,这样能够降低出现时间或字符集问题的几率。
6. RMAN的登录方式
连接目标数据库或者辅助实例必须要有sysdba权限,连接恢复目录数据库不要求有sysdba权限,但连接用户必须有RECOVERY_CATALOG_OWNER角色的权限。
a. RMAN参数关键字及其描述
连接的数据库类型 | 关键字 | 描述 |
目标数据库 | TARGET | 链接到RMAN备份或者恢复的数据库 |
恢复目录数据库 | CATALOG | 存储一个或多个RMAN数据库备份元数据到外部的数据库 |
辅助实例或辅助数据库 | AUXILIARY | 使用RMAN创建Standby数据库、Duplicate数据库、传输表空间或者执行TSPITR是连接到的辅助实例 |
注意:如果RMAN客户端与目标数据库不在同一台服务器上,那么RMAN客户端工具版本与目标数据库的版本必须相同。
b. RMAN登录方式
方式1 只登录目标数据库:
$ rman target /
或者
$rman
rman> connect target /
方式2 登录到目标数据库和辅助实例:
$rman target / auxiliary /@
或者
$rman target /
rman> connect auxiliary /@
方式3 登录到目标数据库、辅助实例和恢复目录数据库
$rman target / auxiliary /@ catalog auxiliary /@
或者
$rman target /
rman> connect auxiliary /@ catalog auxiliary /@
c. 实例状态
连接到目标数据库后的四种状态:
状态1:表示ORCL数据库在打开状态,DBID是123456
connected to target database:ORCL (DBID=123456)
状态2:表示目标数据库未启动
connected to target database(not tarted)
状态3:表示目标数据库在NOMOUNT状态
connected to target database:ORCL(not mounted)
状态4:表示目标数据库在MOUNT状态下
connected to target database:ORCL (DBID=123456,not open)
7. RMAN执行命令模式
a. 单命令模式
RMAN> delete backup of datafile 4;
b. 批量脚本模式
RMAN> run{
2> backup datafile 4;
3> backup current controlfile;
4> }
8. 修改数据库归档模式
a. 查看当前数据库模式
SQL> archive log list;
b. 查看闪回恢复区设置
SQL> show parameter recovery
c. 修改归档模式
SQL> shutdown immediate
SQL> startup mount
SQL> alter database archivelog;
SQL> alter database open;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29339097/viewspace-777385/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29339097/viewspace-777385/