expdp impdp 克隆 pdb, dbv 环境, 传输表空间 --太复杂,只用于pdb往非pdb

不使用 RMAN,使用 export 和 import 克隆一个 open 状态的 PDB。

-----还是用dblink 拷贝吧,方便简单

解决方案

当使用 export/import 克隆的时候,必须保证 export 过程中没有对数据的修改。
可以将所有用户自定义的表空间设置成只读模式,保证在 export 过程中没有用户更改。并且设置 TRANSPORTABLE=ALWAYS 使用可传输选项。

 1 - 在源端可插拔数据库,将所有用户自定义的表空间设置成只读模式,保证在 export 过程中没有用户数据更改。
 2 - 使用拥有 DATAPUMP_EXP_FULL_DATABASE 权限的用户导出数据库,并且对 export/import 指定可传输选项:

expdp user_name/password@pdbname full=Y dumpfile=expdat.dmp directory=data_pump_dir transportable=always logfile=export.log


 3 - 检查日志文件中是否有错误,并记录需要传输到目标库的 dump 文件和数据文件。
 (在 expdp 的日志文件中可以找到这些文件的名字和路径)
 4 - 将导出的 dump 文件和数据文件拷贝到目标库可以访问的位置。
 5 - 原库上,将用户自定义的表空间重新置为读/写状态。
 6 - 在目标库上,为 PDB 创建目录对象。
 7 - 使用拥有 DATAPUMP_EXP_FULL_DATABASE 权限的用户导入,并且指定可传输选项:
 

  impdp user_name/password@pdbname full=Y dumpfile=expdat.dmp directory=data_pump_dir
  transport_datafiles='/u01/app/oracle/oradata/dbname/tbs01.dbf','/u01/app/oracle/oradata/dbname/tbs02.dbf','/u01/app/oracle/oradata/dbname/tbs03.dbf'
  logfile=import.log


8 - 检查导入日志文件看是否有异常错误产生。

 注意:如果有很多数据文件,可以使用参数文件。命令行模式导入可能会超过语句行限制:

 impdp user_name/password@pdbname parfile='parameter.filename'

 
parameter.filename 需要包含下列信息:

FULL=Y
DUMPFILE=expdat.dmp
DIRECTORY=data_pump_dir
TRANSPORT_DATAFILES= '/u01/app/oracle/oradata/dbname/tbs01.dbf', '/u01/app/oracle/oradata/dbname/tbs02.dbf', '/u01/app/oracle/oradata/dbname/tbs03.dbf'
LOGFILE=import.log

详细信息请参考 Database Administrator's Guide - 15 Transporting Data - Transporting a Database Using an Export Dump File
(http://docs.oracle.com/database/121/ADMIN/transport.htm#BEHDCFGH)


SQL>  alter pluggable database pdb close abort instances=all;
SQL>  alter pluggable database pdb  open read only;  ----database readonly不行,只要tablespace readonly


----------
[oracle@rac3 admin]$ expdp system/oracle@pdb full=Y dumpfile=pdb.dmp directory=dmp transportable=always
ORA-39123: Data Pump transportable tablespace job aborted
ORA-39185: The transportable tablespace failure list is

ORA-29335: tablespace 'USERS' is not read only
Job "SYSTEM"."SYS_EXPORT_FULL_03" stopped due to fatal error at Sat Dec 9 13:40:35 2023 elapsed 0 00:00:42


SQL> alter session  set container=pdb;
SQL> alter tablespace users read only;


-------------

SQL> grant DATAPUMP_EXP_FULL_DATABASE  to system container=all;

---
[oracle@rac3 admin]$ expdp system/oracle@pdb full=Y dumpfile=pdb.dmp directory=dmp transportable=always

Export: Release 19.0.0.0.0 - Production on Sat Dec 9 13:15:20 2023
Version 19.20.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
ORA-31626: job does not exist
ORA-31633: unable to create master table "SYSTEM.SYS_EXPORT_FULL_05"
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 95
ORA-06512: at "SYS.KUPV$FT", line 1163
ORA-16000: database or pluggable database open for read-only access
ORA-06512: at "SYS.KUPV$FT", line 1056
ORA-06512: at "SYS.KUPV$FT", line 1044
----

SQL> create directory dmp as '/dmp';
SQL> exit
[root@rac3 ~]# mkdir /dmp
[root@rac3 ~]# chown -R oracle:dba /dmp
[root@rac3 ~]# exit

vi tnsnames.ora ---如果是RAC 注意选一个node ip

---
Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
ORA-39002: invalid operation
ORA-39070: Unable to open the log file.
ORA-29283: invalid file operation: nonexistent file or path [29434]
----

SQL>  alter session  set container=pdb;    
SQL> EXEC DVSYS.DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('SYSTEM');

ORA-01031: insufficient privileges


SQL> conn C##ACCTMGR/oracle;
Connected.
SQL>  alter session  set container=pdb; 

Session altered.

SQL>  EXEC DVSYS.DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('SYSTEM');
PLS-00201: identifier 'DVSYS.DBMS_MACADM' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored


SQL> conn C##DVOWNER/oracle
SQL>  alter session  set container=pdb; 
ORA-01031: insufficient privileges

---先cdb下
SQL>  EXEC DVSYS.DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('SYSTEM');

PL/SQL procedure successfully completed.


[oracle@rac3 admin]$ expdp system/oracle@pdb full=Y dumpfile=pdb.dmp directory=dmp transportable=always
ORA-01031: insufficient privileges


SQL> conn C##ACCTMGR/oracle
Connected.
SQL> grant alter session to C##DVOWNER container=all;
ORA-47410: Realm violation for GRANT on ALTER SESSION

-----切换container 权限
SQL> conn /as sysdba 

SQL> grant alter session to C##DVOWNER container=all;
Grant succeeded.

SQL> conn C##DVOWNER/oracle
Connected.
SQL> alter session  set container=pdb;
ERROR:
ORA-01031: insufficient privileges


SQL> conn /as sysdba
Connected.
SQL> grant set container to C##DVOWNER;

Grant succeeded.

SQL> conn C##DVOWNER/oracle
Connected.
SQL> alter session  set container=pdb;
ERROR:
ORA-01031: insufficient privileges


SQL> conn /as sysdba
Connected.
SQL> grant set container to C##DVOWNER container=all;

Grant succeeded.

SQL> conn C##DVOWNER/oracle
Connected.
SQL>  alter session  set container=pdb;
ERROR:
Session altered.

SQL>  EXEC DVSYS.DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('SYSTEM');
PL/SQL procedure successfully completed.

[oracle@rac3 admin]$ expdp system/oracle@pdb full=Y dumpfile=pdb.dmp directory=dmp transportable=always

Export: Release 19.0.0.0.0 - Production on Sat Dec 9 13:43:42 2023
Version 19.20.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Starting "SYSTEM"."SYS_EXPORT_FULL_03":  system/********@pdb full=Y dumpfile=pdb.dmp directory=dmp transportable=always   */
ORA-39327: Oracle Database Vault data is being stored unencrypted in dump file set.
Processing object type DATABASE_EXPORT/EARLY_OPTIONS/VIEWS_AS_TABLES/TABLE_DATA
Processing object type DATABASE_EXPORT/NORMAL_OPTIONS/TABLE_DATA
Processing object type DATABASE_EXPORT/NORMAL_OPTIONS/VIEWS_AS_TABLES/TABLE_DATA
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/STATISTICS/TABLE_STATISTICS
Processing object type DATABASE_EXPORT/STATISTICS/MARKER
Processing object type DATABASE_EXPORT/PLUGTS_FULL/FULL/PLUGTS_TABLESPACE
Processing object type DATABASE_EXPORT/PLUGTS_FULL/PLUGTS_BLK
Processing object type DATABASE_EXPORT/END_PLUGTS_BLK
Processing object type DATABASE_EXPORT/PRE_SYSTEM_IMPCALLOUT/MARKER
Processing object type DATABASE_EXPORT/PRE_INSTANCE_IMPCALLOUT/MARKER
ORA-39126: Worker unexpected fatal error in KUPW$WORKER.FETCH_XML_OBJECTS [ORA-01031: insufficient privileges

ORA-06512: at "SYS.DBMS_SYS_ERROR", line 105
ORA-06512: at "SYS.KUPW$WORKER", line 12630
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 105
ORA-06512: at "SYS.DBMS_METADATA", line 9571
ORA-06512: at "SYS.DBMS_METADATA", line 2976
ORA-06512: at "SYS.DBMS_METADATA", line 3608
ORA-06512: at "SYS.DBMS_METADATA", line 5008
ORA-06512: at "SYS.DBMS_METADATA", line 5327
ORA-06512: at "SYS.DBMS_METADATA", line 9552
ORA-06512: at "SYS.KUPW$WORKER", line 15119

-----重复授权报错
SQL>  conn C##DVOWNER/oracle
Connected.
SQL> EXEC DVSYS.DBMS_MACADM.AUTHORIZE_DATAPUMP_USER('SYSTEM');
ORA-47952: Oracle Data Pump authorization for Oracle Database Vault to SYSTEM
already exists


----大招DV_OWNER
SQL> GRANT DV_OWNER TO SYStem container=all;

Grant succeeded.

SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.20.0.0.0
[oracle@rac3 admin]$ expdp system/oracle@pdb full=Y dumpfile=pdb.dmp directory=dmp transportable=always

Export: Release 19.0.0.0.0 - Production on Sat Dec 9 13:52:56 2023
Version 19.20.0.0.0

Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Starting "SYSTEM"."SYS_EXPORT_FULL_03":  system/********@pdb full=Y dumpfile=pdb.dmp directory=dmp transportable=always  */
ORA-39327: Oracle Database Vault data is being stored unencrypted in dump file set.
Processing object type DATABASE_EXPORT/EARLY_OPTIONS/VIEWS_AS_TABLES/TABLE_DATA
Processing object type DATABASE_EXPORT/NORMAL_OPTIONS/TABLE_DATA
Processing object type DATABASE_EXPORT/NORMAL_OPTIONS/VIEWS_AS_TABLES/TABLE_DATA
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/INDEX/STATISTICS/INDEX_STATISTICS
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/STATISTICS/TABLE_STATISTICS
Processing object type DATABASE_EXPORT/STATISTICS/MARKER
Processing object type DATABASE_EXPORT/PLUGTS_FULL/FULL/PLUGTS_TABLESPACE
Processing object type DATABASE_EXPORT/PLUGTS_FULL/PLUGTS_BLK
Processing object type DATABASE_EXPORT/END_PLUGTS_BLK
Processing object type DATABASE_EXPORT/PRE_SYSTEM_IMPCALLOUT/MARKER
Processing object type DATABASE_EXPORT/PRE_INSTANCE_IMPCALLOUT/MARKER
Processing object type DATABASE_EXPORT/TABLESPACE
Processing object type DATABASE_EXPORT/PROFILE
Processing object type DATABASE_EXPORT/SCHEMA/USER
Processing object type DATABASE_EXPORT/RADM_FPTM
Processing object type DATABASE_EXPORT/GRANT/SYSTEM_GRANT/PROC_SYSTEM_GRANT
Processing object type DATABASE_EXPORT/SCHEMA/GRANT/SYSTEM_GRANT
Processing object type DATABASE_EXPORT/SCHEMA/ROLE_GRANT
Processing object type DATABASE_EXPORT/SCHEMA/DEFAULT_ROLE
Processing object type DATABASE_EXPORT/SCHEMA/ON_USER_GRANT
Processing object type DATABASE_EXPORT/SCHEMA/TABLESPACE_QUOTA
Processing object type DATABASE_EXPORT/RESOURCE_COST
Processing object type DATABASE_EXPORT/TRUSTED_DB_LINK
Processing object type DATABASE_EXPORT/DIRECTORY/DIRECTORY
Processing object type DATABASE_EXPORT/SYSTEM_PROCOBJACT/PRE_SYSTEM_ACTIONS/PROCACT_SYSTEM
Processing object type DATABASE_EXPORT/SYSTEM_PROCOBJACT/PROCOBJ
Processing object type DATABASE_EXPORT/SYSTEM_PROCOBJACT/POST_SYSTEM_ACTIONS/PROCACT_SYSTEM
Processing object type DATABASE_EXPORT/SCHEMA/PROCACT_SCHEMA
Processing object type DATABASE_EXPORT/EARLY_OPTIONS/VIEWS_AS_TABLES/TABLE
Processing object type DATABASE_EXPORT/EARLY_POST_INSTANCE_IMPCALLOUT/MARKER
Processing object type DATABASE_EXPORT/NORMAL_OPTIONS/TABLE
Processing object type DATABASE_EXPORT/NORMAL_OPTIONS/VIEWS_AS_TABLES/TABLE
Processing object type DATABASE_EXPORT/NORMAL_POST_INSTANCE_IMPCALLOUT/MARKER
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/TABLE
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/COMMENT
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/INDEX/INDEX
Processing object type DATABASE_EXPORT/FINAL_POST_INSTANCE_IMPCALLOUT/MARKER
Processing object type DATABASE_EXPORT/SCHEMA/POST_SCHEMA/PROCACT_SCHEMA
Processing object type DATABASE_EXPORT/DVPS_POLICY/DVPS_DV_AUTH_GROUP/DVPS_DV_AUTH_DP
Processing object type DATABASE_EXPORT/DVPS_POLICY/DVPS_DV_AUTH_GROUP/DVPS_DV_AUTH_DDL
Processing object type DATABASE_EXPORT/DVPS_POLICY/DVPS_DV_AUTH_GROUP/DVPS_DV_ORADEBUG
Processing object type DATABASE_EXPORT/DVPS_POLICY/DVPS_DV_AUTH_GROUP/DVPS_DV_ACCTS
Processing object type DATABASE_EXPORT/AUDIT_UNIFIED/AUDIT_POLICY_ENABLE
Processing object type DATABASE_EXPORT/POST_SYSTEM_IMPCALLOUT/MARKER
. . exported "SYS"."KU$_USER_MAPPING_VIEW"               6.109 KB      39 rows
. . exported "AUDSYS"."AUD$UNIFIED":"SYS_P221"           28.45 MB   10638 rows
. . exported "AUDSYS"."AUD$UNIFIED":"SYS_P308"           53.89 KB       7 rows
. . exported "SYSTEM"."REDO_DB"                          25.59 KB       1 rows
. . exported "WMSYS"."WM$WORKSPACES_TABLE$"              12.10 KB       1 rows
. . exported "WMSYS"."WM$HINT_TABLE$"                    9.984 KB      97 rows
. . exported "LBACSYS"."OLS$INSTALLATIONS"               6.960 KB       2 rows
. . exported "WMSYS"."WM$WORKSPACE_PRIV_TABLE$"          7.078 KB      11 rows
. . exported "SYS"."DAM_CONFIG_PARAM$"                   6.531 KB      14 rows
. . exported "SYS"."TSDP_SUBPOL$"                        6.328 KB       1 rows
. . exported "WMSYS"."WM$NEXTVER_TABLE$"                 6.375 KB       1 rows
. . exported "LBACSYS"."OLS$PROPS"                       6.234 KB       5 rows
. . exported "WMSYS"."WM$ENV_VARS$"                      6.015 KB       3 rows
. . exported "SYS"."TSDP_PARAMETER$"                     5.953 KB       1 rows
. . exported "SYS"."TSDP_POLICY$"                        5.921 KB       1 rows
. . exported "WMSYS"."WM$VERSION_HIERARCHY_TABLE$"       5.984 KB       1 rows
. . exported "WMSYS"."WM$EVENTS_INFO$"                   5.812 KB      12 rows
. . exported "LBACSYS"."OLS$AUDIT_ACTIONS"               5.757 KB       8 rows
. . exported "LBACSYS"."OLS$DIP_EVENTS"                  5.539 KB       2 rows
. . exported "AUDSYS"."AUD$UNIFIED":"AUD_UNIFIED_P0"         0 KB       0 rows
. . exported "LBACSYS"."OLS$AUDIT"                           0 KB       0 rows
. . exported "LBACSYS"."OLS$COMPARTMENTS"                    0 KB       0 rows
. . exported "LBACSYS"."OLS$DIP_DEBUG"                       0 KB       0 rows
. . exported "LBACSYS"."OLS$GROUPS"                          0 KB       0 rows
. . exported "LBACSYS"."OLS$LAB"                             0 KB       0 rows
. . exported "LBACSYS"."OLS$LEVELS"                          0 KB       0 rows
. . exported "LBACSYS"."OLS$POL"                             0 KB       0 rows
. . exported "LBACSYS"."OLS$POLICY_ADMIN"                    0 KB       0 rows
. . exported "LBACSYS"."OLS$POLS"                            0 KB       0 rows
. . exported "LBACSYS"."OLS$POLT"                            0 KB       0 rows
. . exported "LBACSYS"."OLS$PROFILE"                         0 KB       0 rows
. . exported "LBACSYS"."OLS$PROFILES"                        0 KB       0 rows
. . exported "LBACSYS"."OLS$PROG"                            0 KB       0 rows
. . exported "LBACSYS"."OLS$SESSINFO"                        0 KB       0 rows
. . exported "LBACSYS"."OLS$USER"                            0 KB       0 rows
. . exported "LBACSYS"."OLS$USER_COMPARTMENTS"               0 KB       0 rows
. . exported "LBACSYS"."OLS$USER_GROUPS"                     0 KB       0 rows
. . exported "LBACSYS"."OLS$USER_LEVELS"                     0 KB       0 rows
. . exported "SYS"."AUD$"                                24.94 KB      11 rows
. . exported "SYS"."DAM_CLEANUP_EVENTS$"                     0 KB       0 rows
. . exported "SYS"."DAM_CLEANUP_JOBS$"                       0 KB       0 rows
. . exported "SYS"."TSDP_ASSOCIATION$"                       0 KB       0 rows
. . exported "SYS"."TSDP_CONDITION$"                         0 KB       0 rows
. . exported "SYS"."TSDP_FEATURE_POLICY$"                    0 KB       0 rows
. . exported "SYS"."TSDP_PROTECTION$"                        0 KB       0 rows
. . exported "SYS"."TSDP_SENSITIVE_DATA$"                    0 KB       0 rows
. . exported "SYS"."TSDP_SENSITIVE_TYPE$"                    0 KB       0 rows
. . exported "SYS"."TSDP_SOURCE$"                            0 KB       0 rows
. . exported "SYSTEM"."REDO_LOG"                             0 KB       0 rows
. . exported "WMSYS"."WM$BATCH_COMPRESSIBLE_TABLES$"         0 KB       0 rows
. . exported "WMSYS"."WM$CONSTRAINTS_TABLE$"                 0 KB       0 rows
. . exported "WMSYS"."WM$CONS_COLUMNS$"                      0 KB       0 rows
. . exported "WMSYS"."WM$LOCKROWS_INFO$"                     0 KB       0 rows
. . exported "WMSYS"."WM$MODIFIED_TABLES$"                   0 KB       0 rows
. . exported "WMSYS"."WM$MP_GRAPH_WORKSPACES_TABLE$"         0 KB       0 rows
. . exported "WMSYS"."WM$MP_PARENT_WORKSPACES_TABLE$"        0 KB       0 rows
. . exported "WMSYS"."WM$NESTED_COLUMNS_TABLE$"              0 KB       0 rows
. . exported "WMSYS"."WM$RESOLVE_WORKSPACES_TABLE$"          0 KB       0 rows
. . exported "WMSYS"."WM$RIC_LOCKING_TABLE$"                 0 KB       0 rows
. . exported "WMSYS"."WM$RIC_TABLE$"                         0 KB       0 rows
. . exported "WMSYS"."WM$RIC_TRIGGERS_TABLE$"                0 KB       0 rows
. . exported "WMSYS"."WM$UDTRIG_DISPATCH_PROCS$"             0 KB       0 rows
. . exported "WMSYS"."WM$UDTRIG_INFO$"                       0 KB       0 rows
. . exported "WMSYS"."WM$VERSION_TABLE$"                     0 KB       0 rows
. . exported "WMSYS"."WM$VT_ERRORS_TABLE$"                   0 KB       0 rows
. . exported "WMSYS"."WM$WORKSPACE_SAVEPOINTS_TABLE$"        0 KB       0 rows
. . exported "MDSYS"."RDF_PARAM$"                        6.515 KB       3 rows
. . exported "SYS"."AUDTAB$TBS$FOR_EXPORT"               5.953 KB       2 rows
. . exported "SYS"."DBA_SENSITIVE_DATA"                      0 KB       0 rows
. . exported "SYS"."DBA_TSDP_POLICY_PROTECTION"              0 KB       0 rows
. . exported "SYS"."FGA_LOG$FOR_EXPORT"                      0 KB       0 rows
. . exported "SYS"."NACL$_ACE_EXP"                           0 KB       0 rows
. . exported "SYS"."NACL$_HOST_EXP"                      6.914 KB       1 rows
. . exported "SYS"."NACL$_WALLET_EXP"                        0 KB       0 rows
. . exported "SYS"."SQL$TEXT_DATAPUMP"                       0 KB       0 rows
. . exported "SYS"."SQL$_DATAPUMP"                           0 KB       0 rows
. . exported "SYS"."SQLOBJ$AUXDATA_DATAPUMP"                 0 KB       0 rows
. . exported "SYS"."SQLOBJ$DATA_DATAPUMP"                    0 KB       0 rows
. . exported "SYS"."SQLOBJ$PLAN_DATAPUMP"                    0 KB       0 rows
. . exported "SYS"."SQLOBJ$_DATAPUMP"                        0 KB       0 rows
. . exported "SYSTEM"."SCHEDULER_JOB_ARGS"                   0 KB       0 rows
. . exported "SYSTEM"."SCHEDULER_PROGRAM_ARGS"               0 KB       0 rows
. . exported "WMSYS"."WM$EXP_MAP"                        7.718 KB       3 rows
. . exported "WMSYS"."WM$METADATA_MAP"                       0 KB       0 rows
. . exported "SYSTEM"."SYS_EXPORT_FULL_01"               459.8 KB    2701 rows
. . exported "SYSTEM"."SYS_EXPORT_FULL_02"               459.8 KB    2701 rows
Master table "SYSTEM"."SYS_EXPORT_FULL_03" successfully loaded/unloaded
******************************************************************************
Dump file set for SYSTEM.SYS_EXPORT_FULL_03 is:
  /dmp/pdb.dmp
******************************************************************************
Datafiles required for transportable tablespace USERS:
  +DATA/CDB/06344F62B8C65A17E0636401A8C0F073/DATAFILE/users.293.1154572661
Job "SYSTEM"."SYS_EXPORT_FULL_03" completed with 1 error(s) at Sat Dec 9 13:57:46 2023 elapsed 0 00:04:48

[oracle@rac3 admin]$ 

-------------------------

GOAL

You want to move a PDB back to a non-CDB.  Probably the easiest way is to use the FULLY TRANSPORTABLE feature of expdp to accomplish this (FULL=Y TRANSPORTABLE=ALWAYS).
 

SOLUTION

The requirements/limitations are the same when you use TRANSPORTABLE=ALWAYS to move back to a non-CDB from a PDB, as they are when moving between non-CDBs, such as same characterset, same RDBMS version and patches, etc.   (See note "Transportable Tablespace (TTS) Restrictions and Limitations: Details, Reference, and Version Where Applicable (Doc ID 1454872.1).")

The overall steps are basically the same as exporting from a non-CDB, but need some modifications, per steps 2,3,4, 10.

1. Target - Create a new, empty, non-CDB database, using the same 12c binaries (same RDBMS version and patches).

2. Source - Put the PDB's user-defined tablespace(s) in read-only mode.

3. Source - From the PDB, create a directory for where the metadata dumpfile will be created (named TC_DIR in the example; note: you cannot modify DATA_PUMP_DIR for use in a PDB.)

4. Source - Run the export from the CDB.  Example:

host expdp system/<password>@<pdbname> directory=TC_DIR dumpfile=fullexp.dmp logfile=fullexp.log full=y transportable=always;

5. Copy the fullexp.dmp file from the target directory to the source directory.

6. The export log will list the datafiles that need to be copied to the target.  Example:

******************************************************************************
Datafiles required for transportable tablespace USERS:
    <DIRECTORY>/pdb1/users01.dbf   <-------
Job "SYSTEM"."SYS_EXPORT_FULL_01" successfully completed at Mon Jun 29 18:38:28 2015 elapsed 0 00:04:52

7.  Copy (and endian convert, if necessary) the datafiles to the desired location on the target.

8.  Target - Create the directory pointing to the location of the metadata dumpfile (named TC_DIR in the example).

9.  Target - Import as normal for a regular TTS import, but add the full=y parameter.  Example:

host impdp system/<password> directory=TC_DIR dumpfile=fullexp.dmp logfile=fullimp.log full=y transport_datafiles='<new_path_on_target>/users01.dbf'

10. Source - If you want to keep the PDB, you are done.  If you do not want the PDB, unplug it and then drop it (you will have to manually drop the datafiles if you do not unplug the PDB first).  Example:

ALTER PLUGGABLE DATABASE <pdb_name> UNPLUG INTO '<path_name>/<pdb_name>.xml';
DROP PLUGGABLE DATABASE <pdb_name> INCLUDING DATAFILES;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值