初识RMAN4 : RMAN压缩、加密备份,shell中调用RMAN备份

来源:互联网 发布:什么是泛型编程 编辑:程序博客网 时间:2024/06/11 10:21

使用备份集或者镜像副本

使用rman默认备份的命令的话,恢复得时候必须用rman来进行恢复,也可以使用镜像功能,这样可以缩短恢复时间,利用操作系统的命令就可以实现恢复。

增量备份

用0级备份和1级备份。

块修改跟踪功能

备份速度快,备份数据量小

配置二进制压缩功能

备份时启用压缩

--用这个命令在执行的备份的时候启用压缩功能,备份时间上略长一点,从 52分25秒开始到53分33秒结束耗时68秒,不压缩的话用了26秒,但是不启用压缩的话用了2.4G的空间,启用压缩后只占用了不到700M的空间,效率当可以。RMAN> backup as compressed backupset database;启动 backup 于 2015-12-06 13:52:25分配的通道: ORA_DISK_1通道 ORA_DISK_1: SID=371 设备类型=DISK分配的通道: ORA_DISK_2通道 ORA_DISK_2: SID=14 设备类型=DISK通道 ORA_DISK_1: 正在启动压缩的全部数据文件备份集通道 ORA_DISK_1: 正在指定备份集内的数据文件输入数据文件: 文件号=00001 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_SYSTEM_BYCLTN26_.DBF输入数据文件: 文件号=00005 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_UNDOTBS1_BYCLWPHZ_.DBF通道 ORA_DISK_1: 正在启动段 1 于 2015-12-06 13:52:26通道 ORA_DISK_2: 正在启动压缩的全部数据文件备份集通道 ORA_DISK_2: 正在指定备份集内的数据文件输入数据文件: 文件号=00010 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_EXAMPLE_BYCMNHVM_.DBF输入数据文件: 文件号=00009 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_USERS_BYCMNHWP_.DBF通道 ORA_DISK_2: 正在启动段 1 于 2015-12-06 13:52:26通道 ORA_DISK_2: 已完成段 1 于 2015-12-06 13:52:33段句柄=C:\APP\ORACLE\RMAN\RMAN2_3FQO510Q_1_1.BK 标记=TAG20151206T135226 注释=NONE通道 ORA_DISK_2: 备份集已完成, 经过时间:00:00:07通道 ORA_DISK_2: 正在启动压缩的全部数据文件备份集通道 ORA_DISK_2: 正在指定备份集内的数据文件输入数据文件: 文件号=00008 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_SYSAUX_BYCMNHW0_.DBF输入数据文件: 文件号=00007 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_SYSTEM_BYCMNHWC_.DBF通道 ORA_DISK_2: 正在启动段 1 于 2015-12-06 13:52:34通道 ORA_DISK_1: 已完成段 1 于 2015-12-06 13:52:59段句柄=C:\APP\ORACLE\RMAN\RMAN1_3EQO510Q_1_1.BK 标记=TAG20151206T135226 注释=NONE通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:33通道 ORA_DISK_1: 正在启动压缩的全部数据文件备份集通道 ORA_DISK_1: 正在指定备份集内的数据文件输入数据文件: 文件号=00003 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_SYSAUX_BYCLRWV7_.DBF输入数据文件: 文件号=00006 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_USERS_BYCLWOB1_.DBF通道 ORA_DISK_1: 正在启动段 1 于 2015-12-06 13:52:59通道 ORA_DISK_2: 已完成段 1 于 2015-12-06 13:53:00段句柄=C:\APP\ORACLE\RMAN\RMAN2_3GQO5112_1_1.BK 标记=TAG20151206T135226 注释=NONE通道 ORA_DISK_2: 备份集已完成, 经过时间:00:00:26通道 ORA_DISK_2: 正在启动压缩的全部数据文件备份集通道 ORA_DISK_2: 正在指定备份集内的数据文件输入数据文件: 文件号=00004 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_SYSAUX_BYCM0ZW8_.DBF通道 ORA_DISK_2: 正在启动段 1 于 2015-12-06 13:53:00通道 ORA_DISK_1: 已完成段 1 于 2015-12-06 13:53:25段句柄=C:\APP\ORACLE\RMAN\RMAN1_3HQO511R_1_1.BK 标记=TAG20151206T135226 注释=NONE通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:26通道 ORA_DISK_1: 正在启动压缩的全部数据文件备份集通道 ORA_DISK_1: 正在指定备份集内的数据文件输入数据文件: 文件号=00002 名称=C:\APP\ORACLE\ORADATA\CYANG\DATAFILE\O1_MF_SYSTEM_BYCM0ZWL_.DBF通道 ORA_DISK_1: 正在启动段 1 于 2015-12-06 13:53:25通道 ORA_DISK_2: 已完成段 1 于 2015-12-06 13:53:25段句柄=C:\APP\ORACLE\RMAN\RMAN2_3IQO511S_1_1.BK 标记=TAG20151206T135226 注释=NONE通道 ORA_DISK_2: 备份集已完成, 经过时间:00:00:25通道 ORA_DISK_1: 已完成段 1 于 2015-12-06 13:53:32段句柄=C:\APP\ORACLE\RMAN\RMAN1_3JQO512L_1_1.BK 标记=TAG20151206T135226 注释=NONE通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:07完成 backup 于 2015-12-06 13:53:32启动 Control File and SPFILE Autobackup 于 2015-12-06 13:53:32段 handle=C:\APP\ORACLE\RMAN\RMAN_CTL_C-3752195400-20151206-00.BK comment=NONE完成 Control File and SPFILE Autobackup 于 2015-12-06 13:53:33--下面进行了压缩配置并清除回到默认设置。RMAN> CONFIGURE DEVICE TYPE DISK backup type to compressed backupset;旧的 RMAN 配置参数:CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO BACKUPSET;新的 RMAN 配置参数:CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 2;已成功存储新的 RMAN 配置参数释放的通道: ORA_DISK_1释放的通道: ORA_DISK_2-- 使用这个命令清除的时候也会将配置的并行度的配置给清除掉。RMAN> CONFIGURE DEVICE TYPE DISK clear;旧的 RMAN 配置参数:CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 2;RMAN 配置参数已成功重置为默认值RMAN>

配置压缩功能

基本的压缩算法是免费的,在11G R2 中,可以配置下面的压缩算法,前提是你有相关的许可证,因为这个不是免费的。下面分别对配置了三种算法,并最后清除刚才的配置回到默认配种

RMAN> show  COMPRESSION ALGORITHM;db_unique_name 为 CYANG 的数据库的 RMAN 配置参数为:CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # defaultRMAN> configure COMPRESSION ALGORITHM 'HIGH';新的 RMAN 配置参数:CONFIGURE COMPRESSION ALGORITHM 'HIGH' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;已成功存储新的 RMAN 配置参数RMAN> configure COMPRESSION ALGORITHM 'MEDIUM';旧的 RMAN 配置参数:CONFIGURE COMPRESSION ALGORITHM 'HIGH' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;新的 RMAN 配置参数:CONFIGURE COMPRESSION ALGORITHM 'MEDIUM' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;已成功存储新的 RMAN 配置参数RMAN> configure COMPRESSION ALGORITHM 'LOW';旧的 RMAN 配置参数:CONFIGURE COMPRESSION ALGORITHM 'MEDIUM' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;新的 RMAN 配置参数:CONFIGURE COMPRESSION ALGORITHM 'LOW' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;已成功存储新的 RMAN 配置参数RMAN> configure COMPRESSION ALGORITHM clear;旧的 RMAN 配置参数:CONFIGURE COMPRESSION ALGORITHM 'LOW' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE;RMAN 配置参数已成功重置为默认值RMAN>

加密功能

配置加密开关和清除

RMAN> CONFIGURE ENCRYPTION FOR DATABASE On;新的 RMAN 配置参数:CONFIGURE ENCRYPTION FOR DATABASE ON;已成功存储新的 RMAN 配置参数RMAN> show all;db_unique_name 为 CYANG 的数据库的 RMAN 配置参数为:CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # defaultCONFIGURE BACKUP OPTIMIZATION OFF; # defaultCONFIGURE DEFAULT DEVICE TYPE TO DISK; # defaultCONFIGURE CONTROLFILE AUTOBACKUP ON; # defaultCONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'c:\app\oracle\rman\rman_ctl_%F.bk';CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO BACKUPSET;CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT   'C:\app\oracle\rman\rman1_%U.bk';CONFIGURE CHANNEL 2 DEVICE TYPE DISK FORMAT   'C:\app\oracle\rman\rman2_%U.bk';CONFIGURE MAXSETSIZE TO UNLIMITED; # defaultCONFIGURE ENCRYPTION FOR DATABASE ON;CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # defaultCONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # defaultCONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # defaultCONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # defaultCONFIGURE SNAPSHOT CONTROLFILE NAME TO 'C:\APP\ORACLE\PRODUCT\12.1.0\DBHOME_1\DATABASE\SNCFCYANG.ORA'; # defaultRMAN> CONFIGURE ENCRYPTION FOR DATABASE Off;旧的 RMAN 配置参数:CONFIGURE ENCRYPTION FOR DATABASE ON;新的 RMAN 配置参数:CONFIGURE ENCRYPTION FOR DATABASE OFF;已成功存储新的 RMAN 配置参数RMAN> CONFIGURE ENCRYPTION FOR DATABASE clear;旧的 RMAN 配置参数:CONFIGURE ENCRYPTION FOR DATABASE OFF;RMAN 配置参数已成功重置为默认值RMAN> show all2> ;db_unique_name 为 CYANG 的数据库的 RMAN 配置参数为:CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # defaultCONFIGURE BACKUP OPTIMIZATION OFF; # defaultCONFIGURE DEFAULT DEVICE TYPE TO DISK; # defaultCONFIGURE CONTROLFILE AUTOBACKUP ON; # defaultCONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'c:\app\oracle\rman\rman_ctl_%F.bk';CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO BACKUPSET;CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT   'C:\app\oracle\rman\rman1_%U.bk';CONFIGURE CHANNEL 2 DEVICE TYPE DISK FORMAT   'C:\app\oracle\rman\rman2_%U.bk';CONFIGURE MAXSETSIZE TO UNLIMITED; # defaultCONFIGURE ENCRYPTION FOR DATABASE OFF; # defaultCONFIGURE ENCRYPTION ALGORITHM 'AES128'; # defaultCONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # defaultCONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # defaultCONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # defaultCONFIGURE SNAPSHOT CONTROLFILE NAME TO 'C:\APP\ORACLE\PRODUCT\12.1.0\DBHOME_1\DATABASE\SNCFCYANG.ORA'; # defaultRMAN>

配置各种设置

RMAN> configure maxsetsize to 8g;新的 RMAN 配置参数:CONFIGURE MAXSETSIZE TO 8 G;已成功存储新的 RMAN 配置参数RMAN> show maxsetsize;db_unique_name 为 CYANG 的数据库的 RMAN 配置参数为:CONFIGURE MAXSETSIZE TO 8 G;RMAN> CONFIGURE CHANNEL 1 DEVICE TYPE DISK rate 220m;旧的 RMAN 配置参数:CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT   'C:\app\oracle\rman\rman1_%U.bk';新的 RMAN 配置参数:CONFIGURE CHANNEL 1 DEVICE TYPE DISK RATE 220 M;已成功存储新的 RMAN 配置参数RMAN> CONFIGURE CHANNEL 1 DEVICE TYPE DISK maxopenfiles 32;旧的 RMAN 配置参数:CONFIGURE CHANNEL 1 DEVICE TYPE DISK RATE 220 M;新的 RMAN 配置参数:CONFIGURE CHANNEL 1 DEVICE TYPE DISK MAXOPENFILES 32;已成功存储新的 RMAN 配置参数RMAN> show CHANNEL 1 DEVICE TYPE DISK;RMAN-00571: ===========================================================RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============RMAN-00571: ===========================================================RMAN-00558: 分析输入命令时出错RMAN-01009: 语法错误: 找到 "integer": 应为: "for device, for, ;" 中的一个RMAN-01007: 在第 1 行第 14 列, 文件: standard inputRMAN> show all;db_unique_name 为 CYANG 的数据库的 RMAN 配置参数为:CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # defaultCONFIGURE BACKUP OPTIMIZATION OFF; # defaultCONFIGURE DEFAULT DEVICE TYPE TO DISK; # defaultCONFIGURE CONTROLFILE AUTOBACKUP ON; # defaultCONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'c:\app\oracle\rman\rman_ctl_%F.bk';CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO BACKUPSET;CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # defaultCONFIGURE CHANNEL 1 DEVICE TYPE DISK MAXOPENFILES 32;CONFIGURE CHANNEL 2 DEVICE TYPE DISK FORMAT   'C:\app\oracle\rman\rman2_%U.bk';CONFIGURE MAXSETSIZE TO 8 G;CONFIGURE ENCRYPTION FOR DATABASE OFF; # defaultCONFIGURE ENCRYPTION ALGORITHM 'AES128'; # defaultCONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # defaultCONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # defaultCONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # defaultCONFIGURE SNAPSHOT CONTROLFILE NAME TO 'C:\APP\ORACLE\PRODUCT\12.1.0\DBHOME_1\DATABASE\SNCFCYANG.ORA'; # defaultRMAN>

备份脚本:SHELL脚本实现RMAN备份

一个老外写的脚本,可以看下

#!/bin/bashHOLDSID=${1}  # SID namePRG=`basename $0`USAGE="Usage: ${PRG} <database name> "if [ -z "${HOLDSID}" ]; then  echo "${USAGE}"  exit 1fi#----------------------------------------------# source environment variables (see Chapter 2 for details on oraset) . /etc/oraset $HOLDSIDBOX=`uname -a | awk '{print$2}'`MAILX='/bin/mailx'MAIL_LIST='dkuhn@gmail.com'export NLS_DATE_FORMAT='dd-mon-yyyy hh24:mi:ss'date#----------------------------------------------LOCKFILE=/tmp/$PRG.lockif [ -f $LOCKFILE ]; then  echo "lock file exists, exiting..."  exit 1else  echo "DO NOT REMOVE, $LOCKFILE" > $LOCKFILEfi#----------------------------------------------rman nocatalog <<EOFconnect target /set echo on;show all;crosscheck backup;crosscheck copy;configure controlfile autobackup on;configure controlfile autobackup format for device type disk to '/u01/O12C/rman/o12c_ctl_%F.bk';configure retention policy to redundancy 1;configure           device type disk parallelism 2;configure channel 1 device type disk format '/u01/O12C/rman/o12c_%U.bk';configure channel 2 device type disk format '/u02/O12C/rman/o12c_%U.bk';backup as compressed backupset incremental level=0 database plus archivelog;delete noprompt obsolete;EOF#----------------------------------------------if [ $? -ne 0 ]; then  echo "RMAN problem..."  echo "Check RMAN backups" | $MAILX -s "RMAN issue: $ORACLE_SID on $BOX" $MAIL_LISTelse  echo "RMAN ran okay..."fi#----------------------------------------------if [ -f $LOCKFILE ]; then  rm $LOCKFILEfi#----------------------------------------------dateexit 0 
0 0
原创粉丝点击