文章目录
- 一、RMAN备份及故障模拟
- 二、数据库恢复及验证
- 三、注意
一、RMAN备份及故障模拟
1、某一时间节点T1创建一张test表,并插入数据几条数据
SQL> create table test(empno number,ename varchar2(10)) tablespace test;
insert into test values (1,'scott');
insert into test values (2,'smith');
insert into test values (3,'ward');
insert into test values (4,'blake');
insert into test values (5,'allen');
insert into test values (6,'martin');
commit;
2、RMAN全备
[oracle@ora01 ORCL]$ rman target /
RMAN> backup incremental level 0 database tag 'db0' format'/u01/app/oracle/backup/%U_%d_%s_full.bak';
3、某一时间节点T2,继续插入数据
SQL> insert into test values (7,'miller');
4、RMAN增量备份+归档日志备份
RMAN> backup incremental level 1 database tag 'db1' format'/u01/app/oracle/backup/%U_%d_%s_inc.bak';
RMAN> backup archivelog all tag 'arch' format'/u01/app/oracle/backup/arch_%U_%d_%s.bak';
5、模拟故障-在open状态下删除数据库文件、参数文件、控制文件,强制关闭数据库。
[oracle@ora01 ORCL]$ rm -rf $ORACLE_BASE/oradata/ORCL/*.dbf
[oracle@ora01 ORCL]$ rm -rf $ORACLE_BASE/oradata/ORCL/*.ctl
[oracle@ora01 ORCL]$ rm -rf $ORACLE_HOME/dbs/spfileorcl.ora
SQL> shutdown abort
二、数据库恢复及验证
1、RMAN启动数据库到nomount状态恢复动态参数文件spfile
[oracle@ora01 ORCL]$ rman target /
RMAN> startup nomount;
RMAN> restore spfile from '/u01/app/oracle/product/19.0.0/dbhome_1/dbs/c-1709821045-20241019-02';
2、使用恢复的动态参数文件启动数据库到nomount状态
RMAN> shutdown immediate;
RMAN> startup nomount;
3、恢复控制文件并启动数据库到mount状态
RMAN> restore controlfile from '/u01/app/oracle/product/19.0.0/dbhome_1/dbs/c-1709821045-20241019-02';
RMAN> alter database mount;
4、全备数据文件恢复
RMAN> restore database;
5、增备数据文件恢复
RMAN> recover database;
6、打开数据库
RMAN> alter database open resetlogs;
7、数据完整性验证
SQL> select * from test;
三、注意
1、RMAN备份必须使数据库处于ARCHIVELOG模式
2、0级备份和完全备份
Level 0级就是对数据库一个全库备份,增量备份必须从0级开始,也就是说必须要有一个全库备份当基础,也就是只有做了0级备份之后才能进行1级增量备份。
3、RMAN全备备份文件的顺序
备份数据文件、备份控制文件、备份spfile、再次备份归档日志。
4、关于上述参数文件和控制文件恢复
每次进行备份都会产生一个控制文件和参数文件自动备份,可通过需要选择参数文件进行恢复。
Starting Control File and SPFILE Autobackup at 19-OCT-24
piece handle=/u01/app/oracle/product/19.0.0/dbhome_1/dbs/c-1709821045-20241019-02 comment=NONE
Finished Control File and SPFILE Autobackup at 19-OCT-24
本篇完结。
码字不易,宝贵经验分享不易,请各位支持原创,转载注明出处,多多关注作者,后续不定期分享DB相关知识。