运维联盟俱乐部

 找回密码
 立即注册
查看: 1792|回复: 0

[数据迁移] create pdb from remote non_cdb with refresh mode

[复制链接]
  • TA的每日心情
    开心
    2023-8-9 11:05
  • 发表于 2021-9-3 10:38:21 | 显示全部楼层 |阅读模式
    1.环境介绍

    源端单机12c non_cdb,目标RAC 19c pdb,使用持续刷新模式克隆源端nocdb到目标端pdb,目标库pdb自动或者手动刷新,当源库时间窗口内read only,目标数据库pdb结束刷新,升级数据字典,运行nocdb_to_pdb.sql,确认组件全部正常后打开,迁移完毕。

    2.实施条件

    前提条件太多,这里不详细表述,反正都满足。

    建立目标库到源库的dblink,在cdb层
    1. create database link source12 connect to system identified by oracle using '192.168.56.101:1521/orcl';
    复制代码

    3.开始克隆

    使用自动刷新模式克隆远端nocdb到目标端pdb

    1. SQL> CREATE PLUGGABLE DATABASE pdb2 from non$cdb@source12 REFRESH MODE EVERY 6 minutes;

    2. Pluggable database created.

    3. SQL> show pdbs;

    4.     CON_ID CON_NAME              OPEN MODE  RESTRICTED
    5. ---------- ------------------------------ ---------- ----------
    6.      2 PDB$SEED              READ ONLY  NO
    7.      3 PDB1               MOUNTED
    8.      4 PDB2               MOUNTED

    复制代码

    4.目标库刷新

    虽然是地洞刷新,也可手动刷新玩玩,原理是在目标端开了闪回区,把源端的归档拽过来做介质恢复

    1. SQL> alter pluggable database pdb2 refresh;

    2. Pluggable database altered.

    3. SQL> alter pluggable database pdb2 refresh;

    4. Pluggable database altered.
    复制代码

    5.源库read only

    到了维护窗口了,停业务吧,源库只读啦

    1. SQL> startup mount
    2. ORACLE instance started.

    3. Total System Global Area 2516582400 bytes
    4. Fixed Size 8623832 bytes
    5. Variable Size 671090984 bytes
    6. Database Buffers 1828716544 bytes
    7. Redo Buffers 8151040 bytes
    8. Database mounted.
    9. SQL> alter database open read only;

    10. Database altered.

    11. SQL> select count(*) from t;

    12.   COUNT(*)
    13. ----------
    14.     84
    复制代码

    6.关闭刷新

    源库只读后,目标库再刷新几次,然后关闭刷新

    1. SQL> alter pluggable database pdb2 REFRESH MODE NONE;

    2. Pluggable database altered.
    复制代码

    7.升级pdb

    这个pdb2一直是mount状态,现在需要升级到19c的数据字典了

    1. [oracle@zy1 ~]$ dbupgrade -c pdb2
    复制代码

    8.nocdb_to_pdb.sql

    切换到pdb2,执行如下脚本
    1. @$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql
    复制代码

    9.确认组件

    检查一下组件是否都是正常的

    1. SQL> show pdbs;

    2.     CON_ID CON_NAME                          OPEN MODE  RESTRICTED
    3. ---------- ------------------------------ ---------- ----------
    4.          2 PDB$SEED                          READ ONLY  NO
    5.          3 PDB1                           MOUNTED
    6.          5 PDB2                           MOUNTED
    7. SQL> alter pluggable database pdb2 open;

    8. Pluggable database altered.

    9. SQL> select comp_name,status,version from dba_server_registry;
    10. Oracle Database Catalog Views                     VALID                      19.0.0.0.0
    11. Oracle Database Packages and Types                 VALID                      19.0.0.0.0
    12. Oracle Real Application Clusters                 VALID                      19.0.0.0.0
    13. JServer JAVA Virtual Machine                     VALID                      19.0.0.0.0
    14. Oracle XDK                             VALID                      19.0.0.0.0
    15. Oracle Database Java Packages                     VALID                      19.0.0.0.0
    16. OLAP Analytic Workspace                      VALID                      19.0.0.0.0
    17. Oracle XML Database                         VALID                      19.0.0.0.0
    18. Oracle Workspace Manager                     VALID                      19.0.0.0.0
    19. Oracle Text                             VALID                      19.0.0.0.0
    20. Oracle Multimedia                         VALID                      19.0.0.0.0
    21. Spatial                              VALID                      19.0.0.0.0
    22. Oracle OLAP API                          VALID                      19.0.0.0.0
    23. Oracle Label Security                         VALID                      19.0.0.0.0
    24. Oracle Database Vault                         VALID                      19.0.0.0.0
    复制代码

    10.确认数据

    1. [oracle@zy1 ~]$ sqlplus sys/oracle@192.168.56.81:1521/pdb2 as sysdba

    2. SQL*Plus: Release 19.0.0.0.0 - Production on Fri Sep 3 10:40:11 2021
    3. Version 19.12.0.0.0

    4. Copyright (c) 1982, 2021, Oracle.  All rights reserved.


    5. Connected to:
    6. Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
    7. Version 19.12.0.0.0

    8. SQL> desc t
    9. Name                                           Null?    Type
    10. ----------------------------------------- -------- ----------------------------
    11. T                                                    DATE

    12. SQL> select count(*) from t;

    13.   COUNT(*)
    14. ----------
    15.         84
    复制代码






    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    运维联盟俱乐部 ( 冀ICP备19036648号 )

    GMT+8, 2024-5-17 10:57 , Processed in 0.048250 second(s), 21 queries , Gzip On.

    Powered by Discuz! X3.4

    © 2001-2023 Discuz! Team.

    快速回复 返回顶部 返回列表