当前位置:首页 > 经验总结 > 正文内容

Oracle-rman异机恢复

撒谎信2年前 (2023-12-12)经验总结1876

rman异机恢复

环境准备

主机

ip

操作系统版本

数据库版本

数据库状态

源端

19c

192.168.174.130

RHEL7.6

Oracle19c

实例正常运行

目标端

test

192.168.174.140

RHEL7.6

Oracle19c

仅安装数据库软件

 

源端

创建文件夹用来存储备份文件

su - oracle
mkdir -p /home/oracle/backup
sqlplus / as sysdba
create directory backup as '/home/oracle/backup';

创建参数文件

sqlplus / as sysdba
create pfile='/home/oracle/backup/initorcl.ora' from spfile;


开启归档模式

archive log list;
shutdown immediate
startup mount
alter database archivelog;
alter database open;
archive log list;

rman备份数据库

rman target /


run{
allocate channel c1 device type disk;
allocate channel c2 device type disk;
backup database format '/home/oracle/backup/db_%d_%T_%U.bak' plus archivelog format '/home/oracle/backup/ar_%d_%T_%U.bak';
backup current controlfile format '/home/oracle/backup/control_%d_%T_%U.bak';
release channel c1;
release channel c2;
}

传输文件

目标端

su - oracle
mkdir -p /home/oracle/backup

源端

cd /home/oracle/backup
scp * oracle@192.168.174.140:/home/oracle/backup

传输密码文件

源端

scp /u01/app/oracle/product/19c/dbhome_1/dbs/orapworcl oracle@192.168.174.140:/u01/app/oracle/product/19c/dbhome_1/dbs

目标端

准备工作

查看源端的参数文件

cat /home/oracle/backup/initorcl.ora


orcl.__data_transfer_cache_size=0

orcl.__db_cache_size=603979776

orcl.__inmemory_ext_roarea=0

orcl.__inmemory_ext_rwarea=0

orcl.__java_pool_size=16777216

orcl.__large_pool_size=16777216

orcl.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment

orcl.__pga_aggregate_target=637534208

orcl.__sga_target=956301312

orcl.__shared_io_pool_size=50331648

orcl.__shared_pool_size=251658240

orcl.__streams_pool_size=0

orcl.__unified_pga_pool_size=0

*.audit_file_dest='/u01/app/oracle/admin/orcl/adump'

*.audit_trail='db'

*.compatible='19.0.0'

*.control_files='/u01/app/oracle/oradata/ORCL/controlfile/o1_mf_ll1nyqb3_.ctl','/u01/app/oracle/fast_recovery_area/ORCL/controlfile/o1_mf_ll1nyqbl_.ctl'

*.db_block_size=8192

*.db_create_file_dest='/u01/app/oracle/oradata'

*.db_name='orcl'

*.db_recovery_file_dest='/u01/app/oracle/fast_recovery_area'

*.db_recovery_file_dest_size=8256m

*.diagnostic_dest='/u01/app/oracle'

*.dispatchers='(PROTOCOL=TCP) (SERVICE=orclXDB)'

*.memory_target=1507m

*.open_cursors=300

*.processes=320

*.remote_login_passwordfile='EXCLUSIVE'

*.undo_tablespace='UNDOTBS1'

创建参数文件中用到的目录

su - oracle
mkdir -p /u01/app/oracle/admin/orcl/adump
mkdir -p /u01/app/oracle/oradata/ORCL/controlfile
mkdir -p /u01/app/oracle/fast_recovery_area

编辑环境变量

su - oracle
export ORACLE_SID=orcl

创建spfile文件,启动数据库到nomount状态

sqlplus / as sysdba

create spfile from pfile='/home/oracle/backup/initorcl.ora';

startup nomount

rman设置dbid

源端使用rman连接查询dbid

image.png 

目标端

rman target /

# 设置dbid

set dbid=1677331735


image.png 

恢复控制文件

# 恢复控制文件

# 参数文件中指定的控制文件的路径要存在

restore controlfile from '/home/oracle/backup/control_ORCL_20231008_0b28db5v_1_1.bak';

image.png 

控制文件恢复后数据库启动到mount状态

alter database mount;

恢复数据库

rman target /
list backup
run {
allocate channel c1 device type disk;
allocate channel c2 device type disk;
allocate channel c3 device type disk;
restore database;
recover database;
}


image.png 

出现这个是正常情况,提示缺少归档日志。

启动到open状态

alter database open resetlogs


扫描二维码推送至手机访问。

版权声明:本文由撒谎信发布,如需转载请注明出处。

本文链接:https://www.yangwuyu.com/?id=5

标签: Oraclerman
分享给朋友:
返回列表

没有更早的文章了...

下一篇:opengauss常用命令

“Oracle-rman异机恢复” 的相关文章

opengauss常用命令

opengauss常用命令

======库外操作======--检查端口netstat -anp | grep LISTEN | grep 端口 netstat -tuln | grep 端口 nmap ...

GoldenDB告警脚本部署及基本使用

GoldenDB告警脚本部署及基本使用

GoldenDB-Sloth-告警部署和基础应用目 录1、 上传工具包(1) 将alarm告警工具压缩包上传至insight服务器中2、 复制文件3、 编辑配置文件(1) 编辑告警发送格式(2) 编辑告警发送渠道send.xml(3) 编辑告警过滤器filters.xml4、 启动告警检查...

MySQL系列-join的用法

MySQL系列-join的用法

导言        在数据库操作中,JOIN是实现多表关联查询的核心机制。相较于嵌套子查询和IN操作符,合理使用JOIN能显著提升查询性能,优化执行计划,并增强SQL代码的可读性与可维护性。本文将系统解析MySQL中的J...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。