RMAN基于SCN或特定时间点的不完全恢复

点击有惊喜


前提:

数据库已开启归档:

SQL> archive log list

Database log mode           Archive Mode

Automatic archival            Enabled

Archive destination           /u01/app/oracle/product/11.2.0/db_1/dbs/arch

Oldest online log sequence     23

Next log sequence to archive   25

Current log sequence        25

SQL>

 

一、         RMAN备份脚本

Level0备份脚本

vim rman_bak_level0.sh 

#! /bin/bash 

export ORACLE_BASE=$ORACEL_BASE

export ORACLE_HOME=$ORACLE_HOME 

export PATH=$ORACLE_HOME/bin:$PATH 

export ORACLE_SID=orcl 

export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK' 

rman target / <<EOF 

run{ 

allocate channel c1 type disk; 

allocate channel c2 type disk; 

backup incremental level 0 database format '/u01/backup/level0_%d_%s_%p_%u.bak'; 

sql 'alter system archive log current'; 

backup archivelog all delete input format '/u01/backup/archivelog_%d_%s_%p_%u.bak'; 

crosscheck backup; 

delete noprompt obsolete; 

release channel c1; 

release channel c2; 

>>EOF 

 

 

Level1备份脚本

vim rman_bak_level1.sh  

#! /bin/bash 

export ORACLE_BASE=$ORACLE_BASE 

export ORACLE_HOME=$ORACLE_HOME 

export PATH=$ORACLE_HOME/bin:$PATH 

export ORACLE_SID=orcl

export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK' 

rman target / <<EOF 

run{ 

allocate channel c1 type disk; 

allocate channel c2 type disk; 

backup incremental level 1 database format '/u01/backup/level1_%d_%s_%p_%u.bak'; 

sql 'alter system archive log current'; 

backup archivelog all delete input format '/u01/backup/archivelog_%d_%s_%p_%u.bak'; 

crosscheck backup; 

delete noprompt obsolete; 

release channel c1; 

release channel c2; 

>>EOF 

 

Level2备份脚本

vim rman_bak_level2.sh 

#! /bin/bash 

export ORACLE_SID=orcl 

export NLS_LANG='AMERICAN_AMERICA.ZHS16GBK' 

$ORACLE_HOME/bin/rman target / <<EOF 

run{ 

allocate channel c1 type disk; 

allocate channel c2 type disk; 

backup incremental level 2 database format '/u01/backup/level2_%d_%s_%p_%u.bak'; 

sql 'alter system archive log current'; 

backup archivelog all delete input format '/u01/backup/archivelog_%d_%s_%p_%u.bak'; 

crosscheck backup; 

delete noprompt obsolete; 

release channel c1; 

release channel c2; 

>>EOF 

 

 

二、备份数据库测试

1.执行0级备份

  [oracle@oracle scripts]$ ll

total 12

-rwxr--r-- 1 oracle oinstall 600 Oct 18 12:46 rman_bak_level0.sh

-rwxr--r-- 1 oracle oinstall 600 Oct 18 12:46 rman_bak_level1.sh

-rwxr--r-- 1 oracle oinstall 532 Oct 18 12:46 rman_bak_level2.sh

[oracle@oracle scripts]$

 [oracle@oracle scripts]$ sh rman_bak_level0.sh

   查看备份日志,成功备份

7de41e925431ca8d901f3118abd910cf0cb67045

2.创建表level0

SQL> create table level0 as select * from scott.emp;

 

Table created.

eb3520d42bb7bc862c838e9e010d8043bab04ec6

3.执行1级增量备份

[oracle@oracle scripts]$ date

Wed Oct 18 12:58:19 CST 2017

[oracle@oracle scripts]$ sh rman_bak_level1.sh

查看备份日志,成功备份

0f9b2f287bc2c69b5db23a7f5dc1b7a45958cf7c

4.创建表level1

SQL> create table level1 as select * from scott.dept;

Table created.

SQL> !date

Wed Oct 18 13:01:15 CST 2017

5.执行2级增量备份

[oracle@oracle scripts]$ sh rman_bak_level2.sh

查看备份日志,成功备份

deb37f438b1f24217e184797a7dfc64427180644

2c25d96cebe89fc19025836f9eb7f3d0f859148a


点击有惊喜


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值