1.环境介绍源端单机12c non_cdb,目标RAC 19c pdb,使用持续刷新模式克隆源端nocdb到目标端pdb,目标库pdb自动或者手动刷新,当源库时间窗口内read only,目标数据库pdb结束刷新,升级数据字典,运行nocdb_to_pdb.sql,确认组件全部正常后打开,迁移完毕。
2.实施条件前提条件太多,这里不详细表述,反正都满足。建立目标库到源库的dblink,在cdb层
create database link source12 connect to system identified by oracle using '192.168.56.101:1521/orcl';
3.开始克隆使用自动刷新模式克隆远端nocdb到目标端pdb
SQL> CREATE PLUGGABLE DATABASE pdb2 from non$cdb@source12 REFRESH MODE EVERY 6 minutes;Pluggable database created.SQL> show pdbs;CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ----------2 PDB$SEED READ ONLY NO3 PDB1 MOUNTED4 PDB2 MOUNTED
4.目标库刷新虽然是地洞刷新,也可手动刷新玩玩,原理是在目标端开了闪回区,把源端的归档拽过来做介质恢复
SQL> alter pluggable database pdb2 refresh;Pluggable database altered.SQL> alter pluggable database pdb2 refresh;Pluggable database altered.
5.源库read only到了维护窗口了,停业务吧,源库只读啦
SQL> startup mountORACLE instance started.Total System Global Area 2516582400 bytesFixed Size 8623832 bytesVariable Size 671090984 bytesDatabase Buffers 1828716544 bytesRedo Buffers 8151040 bytesDatabase mounted.SQL> alter database open read only;Database altered.SQL> select count(*) from t;COUNT(*)----------84
6.关闭刷新源库只读后,目标库再刷新几次,然后关闭刷新
SQL> alter pluggable database pdb2 REFRESH MODE NONE;Pluggable database altered.
7.升级pdb这个pdb2一直是mount状态,现在需要升级到19c的数据字典了
[oracle@zy1 ~]$ dbupgrade -c pdb2
8.nocdb_to_pdb.sql切换到pdb2,执行如下脚本
@$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql
9.确认组件检查一下组件是否都是正常的
SQL> show pdbs;CON_ID CON_NAME OPEN MODE RESTRICTED---------- ------------------------------ ---------- ----------2 PDB$SEED READ ONLY NO3 PDB1 MOUNTED5 PDB2 MOUNTEDSQL> alter pluggable database pdb2 open;Pluggable database altered.SQL> select comp_name,status,version from dba_server_registry;Oracle Database Catalog Views VALID 19.0.0.0.0Oracle Database Packages and Types VALID 19.0.0.0.0Oracle Real Application Clusters VALID 19.0.0.0.0JServer JAVA Virtual Machine VALID 19.0.0.0.0Oracle XDK VALID 19.0.0.0.0Oracle Database Java Packages VALID 19.0.0.0.0OLAP Analytic Workspace VALID 19.0.0.0.0Oracle XML Database VALID 19.0.0.0.0Oracle Workspace Manager VALID 19.0.0.0.0Oracle Text VALID 19.0.0.0.0Oracle Multimedia VALID 19.0.0.0.0Spatial VALID 19.0.0.0.0Oracle OLAP API VALID 19.0.0.0.0Oracle Label Security VALID 19.0.0.0.0Oracle Database Vault VALID 19.0.0.0.0
10.确认数据
源库有个t表,每一分钟插入一条sysdate,readonly是记录是84,新pdb开库后85,正常
[oracle@zy1 ~]$ sqlplus sys/oracle@192.168.56.81:1521/pdb2 as sysdbaSQL*Plus: Release 19.0.0.0.0 - Production on Fri Sep 3 10:40:11 2021Version 19.12.0.0.0Copyright (c) 1982, 2021, Oracle. All rights reserved.Connected to:Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - ProductionVersion 19.12.0.0.0SQL> desc tName Null? Type----------------------------------------- -------- ----------------------------T DATESQL> select count(*) from t;COUNT(*)----------84

文章转载自godba,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




