暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Rman-恢复单个PDB

1、测试RMAN 恢复单个PDB

实验环境:同平台版本迁移

操作系统:Oracle Linux 7.6

数据库版本: Release 19.0.0. - Production

目标库版本: Release 19.0.0 - Production

1.备份

run{

allocate channel c1 device type disk;

allocate channel c2 device type disk;

backup database filesperset 3 format '/soft/db_%d_%T_%U';

backup archivelog all format '/soft/arc_%t_%s';

backup current controlfile format '/soft/cntrl_%s_%p_%s';

release channel c1;

release channel c2;

}


2.scp /soft/文件中的bak到异机的/soft/下

[oracle@henry soft]$ scp /soft/db_CDB19C_20230328_3m1o6kc0_1_1 oracle@192.168.6.132:/soft/


3.恢复参数文件+控制文件

rman target /

RMAN> startup nomount;

restore controlfile from '/soft/cntrl_131_1_131';

Starting restore at 2023-03-29 09:12:19

using target database control file instead of recovery catalog

allocated channel: ORA_DISK_1

channel ORA_DISK_1: SID=135 device type=DISK

channel ORA_DISK_1: restoring control file

channel ORA_DISK_1: restore complete, elapsed time: 00:00:01

output file name=/oracle/app/oracle/oradata/CDB19C/control01.ctl

output file name=/oracle/app/oracle/oradata/CDB19C/control02.ctl

Finished restore at 2023-03-29 09:12:22

RMAN> alter database mount;


--3.注册备份集

RMAN> catalog start with '/soft/';


4.开始恢复

--4.1 恢复cdb$root

run {

set newname for database to '/oracle/app/oracle/oradata/CDB19C/test/%U';

restore database root ;

}


--4.2 恢复PDB$SEED

run {

set newname for database to '/oracle/app/oracle/oradata/CDB19C/test/pdbseed/%U';

restore database "PDB$SEED";

}


-4.3 恢复pdb:PRODB

run {

set newname for database to '/oracle/app/oracle/oradata/CDB19C/test/PRODB/%U';

restore database PRODB;

}

RMAN> switch database root to copy;

RMAN> switch database "PDB$SEED" to copy;

RMAN> switch database PRODB to copy;

RMAN> recover database skip forever tablespace ERP:SYSTEM,ERP:SYSAUX,ERP:UNDOTBS1,ERP:USERS;


5、rename tempfile & redo logfile

alter database rename file '/oracle/app/oracle/oradata/CDB19C/redo03.log' to '/oracle/app/oracle/oradata/CDB19C/test/redo03.log';

alter database rename file '/oracle/app/oracle/oradata/CDB19C/redo02.log' to '/oracle/app/oracle/oradata/CDB19C/test/redo02.log';

alter database rename file '/oracle/app/oracle/oradata/CDB19C/redo01.log' to '/oracle/app/oracle/oradata/CDB19C/test/redo01.log';

alter database rename file 'oracle/app/oracle/oradata/CDB19C/temp01.dbf' to '/oracle/app/oracle/oradata/CDB19C/test/temp01.dbf';


-6. open database

RMAN> alter database open resetlogs;

Statement processed


SQL> show pdbs;

CON_ID CON_NAME OPEN MODE RESTRICTED

2 PDB$SEED READ ONLY NO

3 ERP MOUNTED

4 PRODB MOUNTED

5 HR MOUNTED


SQL> alter pluggable database prodb open;

Pluggable database altered


SQL> show pdbs;

CON_ID CON_NAME OPEN MODE RESTRICTED

2 PDB$SEED READ ONLY NO

3 ERP MOUNTED

4 PRODB READ WRITE NO

5 HR MOUNTED


ERP 未恢复,是不能打开的,但是可以删除掉

SQL> alter pluggable database hr open;

alter pluggable database hr open


*

ERROR at line 1:

ORA-01147: SYSTEM tablespace file 21 is offline

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论