一、场景介绍
场景:数据库服务器宕机,无法恢复
处理:使用备份资料进行异地恢复
二、准备目标主机
三、演练所需资料清单
数据库全备、归档日志、pfile、自动备份控制文件
四、恢复演练步骤
1、通过pfile确认数据库软件版本
*.compatible=‘11.2.0.4.0’
2、目标库安装11.2.0.4.0数据库软件及配置监听
3、启动数据库至nomount
1)复制pfile至$HOME/dbs/
cp /worktmp/wms/pfile_2022-10-18.ora $ORACLE_HOME/dbs/initorcl.ora
—pfile命名格式init.ora,存储路径$ORACLE_HOME/dbs
2)创建pfile内涉及的所有路径
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oracle/admin/orcl/adump
mkdir -p /u01/app/oracle/oradata/orcl
mkdir -p /u01/app/oracle/fast_recovery_area
mkdir -p /u01/app/oracle/archive/archive
mkdir -p /u01/app/oracle/oradata/orcl
3)以pfile启动数据库至nomount
SQL> startup nomount pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/initorcl.ora';
4)以pfile创建spfile
SQL> create spfile from pfile;
5)关闭实例,再以spfile启动数据库至nomount
SQL> shutdown immediate;
SQL> startup nomount;
4、还原控制文件(通过自动备份的控制文件)
RMAN> restore controlfile from '/worktmp/wms/c-1479196590-20221018-00';
5、启动数据库至mount
RMAN> sql 'alter database mount';
6、注册备份资料(DB备份与归档日志)
RMAN> catalog start with '/worktmp/wms';
7、还原数据库
RMAN> restore database;
8、检查备份资料
RMAN> list backup;
备份资料内最新的归档日志sequence为352981
9、恢复数据库
10、以OPEN RESETLOGS方式打开数据库
RMAN> sql 'alter database open resetlogs';
11、生成密码文件
orapwd file=$ORACLE_HOME/dbs/orapworcl password=Cqhkc_123 force=y
12、第3方工具连接数据库