Oracle RMAN 增量备份完整恢复测试

2014-11-24 18:22:22 · 作者: · 浏览: 0

测试环境:


创建测试表空间:


SQL> create tablespace tablespace1


2 datafile '/db/app/oracle/oradata/orcl/tablespace1.dbf'


3 size 10m;


Tablespace created.


SQL>



创建测试用户并指定为默认表空间:


SQL> create user user1 identified by oracle default tablespace tablespace1;


User created.


SQL>


设置该测试用户权限:


SQL> grant create session,create table,unlimited tablespace to user1;


Grant succeeded.


SQL>


用新创建的用户登录:


SQL> conn user1/


Enter password:


Connected.


SQL>


建表并写入数据:


SQL> create table table1 (id int,name varchar2(30));


Table created.


SQL> insert into table1 values(0001,'Tian');


1 row created.


SQL> insert into table1 values(0002,'zhong');


1 row created.


SQL> select * from table1;


ID NAME


---------- ------------------------------


1 Tian


2 zhong


SQL> commit;


Commit complete.


配置RMAN环境变量


切换sys用户作0级备份:


利用configure命令配置RMAN环境:


RMAN>CONFIGURE CONTROLFILE AUTOBACKUP ON;#开启归档日志自动备份


RMAN>CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/db/bak/ctf/%d_ctf_bak_%F';#指定归档日志备份位置


RMAN>CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO COMPRESSED BACKUPSET;#采用并行度为2且压缩备份集的方式备份到磁盘。


RMAN>CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT '/db/bak/disk1/%d_datafile_bak_%U';


RMAN>CONFIGURE CHANNEL 2 DEVICE TYPE DISK FORMAT '/db/bak/disk2/%d_datafile_bak_%U';



RMAN> show all;



RMAN configuration parameters for database with db_unique_name ORCL are:


CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default


CONFIGURE BACKUP OPTIMIZATION OFF; # default


CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default


CONFIGURE CONTROLFILE AUTOBACKUP ON;


CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/db/bak/ctf/%d_ctf_bak_%F';


CONFIGURE DEVICE TYPE DISK PARALLELISM 2 BACKUP TYPE TO COMPRESSED BACKUPSET;


CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default


CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default


CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2 G;


CONFIGURE CHANNEL 1 DEVICE TYPE DISK FORMAT '/db/bak/disk1/%d_datafile_bak_%U';


CONFIGURE CHANNEL 2 DEVICE TYPE DISK FORMAT '/db/bak/disk2/%d_datafile_bak_%U';


CONFIGURE MAXSETSIZE TO UNLIMITED; # default


CONFIGURE ENCRYPTION FOR DATABASE OFF; # default


CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default


CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default


CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default


CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/db/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_orcl.f'; # default



备份全库(包括归档日志及启动参数文件等):


RMAN>


RMAN> backup incremental level 0 database plus archivelog;



Starting backup at 06-MAY-11


current log archived


using channel ORA_DISK_1


….


….(省略过程)


提示备份成功。可以再通过RMAN>list backup;查看已有备份确认(注意LV 字段全为0,为0级增量备份)。


继续往测试表中插入新数据:


SQL> insert into table1 values(3,'wang');


1 row created.


SQL> insert into table1 values(4,'newtest');


1 row created.



SQL> select * from table1;


ID NAME


---------- ------------------------------


1 Tian


2 zhong


3 wang


4 newtest


SQL> commit;


Commit complete.插入成功,并提交。



1级增量备份全库:


RMAN> backup incremental level 1 database plus archivelog;




省略备份过程细节。


提示备份成功。可以再通过RMAN>list backup;查看已有备份确认(此时LV字段包含0和1,表示目前备份中已包含有0级和1级增量备份)。