2026,驾! 1月23日 星期五 16:30 云祺视频号准时直播
云祺直播二维码
扫码预约直播,观看精彩内容! 扫码预约直播,观看精彩内容!
关闭按钮
云祺Logo 云祺Logo

技术博客

Blog
技术博客 [Rman]Oracle Rman增量备份Level012脚本

[Rman]Oracle Rman增量备份Level012脚本

2018-05-23

采用0221222增量备份策略,7天一个轮回。也就是周日0级备份,周1 2 4 5 6 采用2级增量备份,周3采用1级增量备份。

打开控制文件自动备份

CONFIGURE CONTROLFILE AUTOBACKUP ON;


配置控制文件备份路径

RMAN > CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 
'/file/backup/rman/controlfile_%F';
将过期天数设为7天
RMAN> CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;

数据备份目录

$ mkdir -p /file/backup/rman/


脚本解释:

vim rman_bak_level0.sh   
#! /bin/bash 
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=neal    --数据库ORACLE_SID
export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK'   --字符集
rman target / <<EOF  
run{  
allocate channel d1 type disk;   --分配通道d1,类型备份到磁盘
allocate channel d2 type disk;   --分配通道d2,类型备份到磁盘
backup incremental level 0 database format '/file/backup/rman/level0_%d_%s_%p_%u.bkp';  
 --备份级别、输出格式、路径
sql 'alter system archive log current';    --对当前redo日志进行归档
backup archivelog all delete input format '/file/backup/rman/archivelog_%d_%s_%p_%u.bkp'; 
 --备份归档日志并删除
crosscheck backup;   --检查备份
delete noprompt obsolete;  --静默删除过期备份
release channel d1;  --释放通道d1
release channel d2;  --释放通道d2
}  
EOF


下面开始创建0级 1级 2级备份脚本


0级备份脚本

vim rman_bak_level0.sh
#! /bin/bash
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=neal
export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK'
rman target / <<EOF
run{
allocate channel d1 type disk;
allocate channel d2 type disk;
backup incremental level 0 database format '/file/backup/rman/level0_%d_%s_%p_%u.bkp';
sql 'alter system archive log current';
backup archivelog all delete input format '/file/backup/rman/archivelog_%d_%s_%p_%u.bkp';
crosscheck backup;
delete noprompt obsolete;
release channel d1;
release channel d2;
}
EOF


1级备份脚本

vim rman_bak_level1.sh
#! /bin/bash
export ORACLE_BASE=/u01/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export PATH=$ORACLE_HOME/bin:$PATH
export ORACLE_SID=neal
export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK'
rman target / <<EOF
run{
allocate channel d1 type disk;
allocate channel d2 type disk;
backup incremental level 1 database format '/file/backup/rman/level1_%d_%s_%p_%u.bkp';
sql 'alter system archive log current';
backup archivelog all delete input format '/file/backup/rman/archivelog_%d_%s_%p_%u.bkp';
crosscheck backup;
delete noprompt obsolete;
release channel d1;
release channel d2;
}
EOF
2级备份脚本



vim rman_bak_level2.sh
#! /bin/bash
export ORACLE_SID=neal
export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK'
/u01/oracle/product/11.2.0/db_1/bin/rman target / <<EOF
run{
allocate channel d1 type disk;
allocate channel d2 type disk;
backup incremental level 2 database format '/file/backup/rman/level2_%d_%s_%p_%u.bkp';
sql 'alter system archive log current';
backup archivelog all delete input format '/file/backup/rman/archivelog_%d_%s_%p_%u.bkp';
crosscheck backup;
delete noprompt obsolete;
release channel d1;
release channel d2;
}
EOF
加入到crontab
crontab -e
#周日0级备份
00 23 * * 0 /server/scripts/rman_bak_level0.sh
#周一、二、四、五、六2级增量备份
00 23 * * 1,2,4,5,6 /server/scripts/rman_bak_level2.sh
#周三1级增量备份
00 23 * * 3 /server/scripts/rman_bak_level1.sh

Rman备份中变量的含义

backup incremental level 0 database format='LEV0_%d_%t_%U_%s_%p' 
format=string 文件路径和名称的格式串,其中可包含宏变量:
%c copy ID
%p backup piece ID
%s backup set ID
%e log sequence
%h log thread ID
%d database name
%n database name(x填充到8个字符)
%I DBID
%f file ID
%F DBID, day, month, year, and sequencer的复合
%N tablespace name
%t timestamp
%M mh mm格式
%Y year yyyy格式
%u backup set+time((x填充到8个字符)
%U %u_%p_%c
%% %
The format specifier %U is replaced with unique filenames for the files when you take backups.
the %F element of the format string combines the DBID, day, month, year, and sequence number to generate a unique filename. %F must be included in any control file autobackup format.

云祺备份软件,云祺容灾备份系统,虚拟机备份,数据库备份,文件备份,实时备份,勒索软件,美国,图书馆

您可能感兴趣的新闻 换一批

现在下载,可享15天免费试用

立即下载

请添加好友为您提供支持
jia7jia_7

微信售后服务二维码

请拨打电话
为您提供支持

400-9955-698