create table t1 (id number(2));
insert into t1 values(0);
commit;
--bak0
run {
allocate channel ch1 device type disk;
allocate channel ch2 device type disk;
allocate channel ch3 device type disk;
allocate channel ch4 device type disk;
allocate channel ch5 device type disk;
allocate channel ch6 device type disk;
sql 'alter system checkpoint';
sql 'alter system switch logfile';
sql 'alter system archive log current';
backup incremental level 0 database format '/home/oracle/backup/bak0/bak0_%U';
backup archivelog all format '/home/oracle/backup/bak0/bak0_arch_%U';
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
release channel ch6;
}
insert into t1 values(11);
commit;
create table t2 as select * from dba_objects;
--bak1_1
run {
allocate channel ch1 device type disk;
allocate channel ch2 device type disk;
allocate channel ch3 device type disk;
allocate channel ch4 device type disk;
allocate channel ch5 device type disk;
allocate channel ch6 device type disk;
sql 'alter system checkpoint';
sql 'alter system switch logfile';
sql 'alter system archive log current';
backup incremental level 1 database format '/home/oracle/backup/bak1_1/bak1_1_
%U';
backup archivelog all not backed up format
'/home/oracle/backup/bak1_1/bak1_1_arch_%U';
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
release channel ch6;
}
insert into t1 values(12);
commit;
insert into t2 select * from dba_objects;
commit;
create table t3 as select * from dba_objects;
--bak1_2
run {
allocate channel ch1 device type disk;
allocate channel ch2 device type disk;
allocate channel ch3 device type disk;
allocate channel ch4 device type disk;
allocate channel ch5 device type disk;
allocate channel ch6 device type disk;
sql 'alter system checkpoint';
sql 'alter system switch logfile';
sql 'alter system archive log current';
backup incremental level 2 database format '/home/oracle/backup/bak1_2/bak1_2_
%U';
backup archivelog all not backed up format
'/home/oracle/backup/bak1_2/bak1_2_arch_%U';
release channel ch1;
release channel ch2;
release channel ch3;
release channel ch4;
release channel ch5;
release channel ch6;
}
--0 恢复
SQL> shut immediate
SQL> startup nomount;
RMAN> restore controlfile from
'/home/oracle/backup/bak0/o1_mf_s_1048151743_hm3wb0fd_.bkp';
RMAN> alter database mount;
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of alter db command at 08/11/2020 17:48:46
ORA-01103: 控制文件中的数据库名 ''ORCL11GR'' 不是 ''ORCL''
create pfile='/home/oracle/init.ora' from spfile;
shut immediate
create spfile from pfile='/home/oracle/init.ora';
startup mount;
--使用 restore database validate 验证备份时也报
RMAN> restore database;
using channel ORA_DISK_1
RMAN-00571: ===========================================================
RMAN-00569: ============
rman备份与恢复脚本
最新推荐文章于 2024-05-24 15:46:25 发布