重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
参考,如何在 12.2.0.1 通过 dblink 在线拷贝 PDB (文档 ID 24726-43.1)
创新互联建站致力于互联网品牌建设与网络营销,包括成都做网站、成都网站制作、SEO优化、网络推广、整站优化营销策划推广、电子商务、移动互联网营销等。创新互联建站为不同类型的客户提供良好的互联网应用定制及解决方案,创新互联建站核心团队10年专注互联网开发,积累了丰富的网站经验,为广大企业客户提供一站式企业网站建设服务,在网站建设行业内树立了良好口碑。
对于数据量小的库而言,这个功能简单,操作方便,可以一试。
源 DB: cdb - orcl, pdb - PDB.
目标 DB: cdb - R12201
我们将在不关闭 PDB,也不需要将 PDB 设置为只读模式的情况下,将 orcl 在线拷贝 到 R12201
1. 检查源 DB 是否使用了 local undo(应启用 local undo):
SQL> SELECT property_name, property_value FROM database_properties WHERE
SQL> property_name = 'LOCAL_UNDO_ENABLED';
PROPERTY_NAME PROPERTY_VALUE
------------------------------ ------------------------------
LOCAL_UNDO_ENABLED TRUE
2. 检查源 DB 是否启用归档模式(必须启用归档模式):
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /arch2
Oldest online log sequence 2
Next log sequence to archive 3
Current log sequence 3
3. 在源 DB 创建执行拷贝 操作的 DB 用户:
CREATE USER c##adminpdb IDENTIFIED BY adminpdb CONTAINER=ALL;
GRANT CREATE SESSION, CREATE PLUGGABLE DATABASE TO c##adminpdb CONTAINER=ALL;
4. 在目标 DB 上创建一个 tns 别名以指向源 DB:
orcl=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST =
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
5. 在目标 DB 创建 dblink:
$ sqlplus / as sysdba
Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 6-4 bit Production
SQL> CREATE DATABASE LINK to_source CONNECT TO c##adminpdb IDENTIFIED BY
SQL> adminpdb USING 'orcl';
Database link created.
SQL> select * from dual@to_source;
D
-
X
6. 在目标 DB 执行下面的操作,将 pdb 在线拷贝 到 pdbnew(注意:FILE_NAME_CONVERT 应相应更改):
SQL> CREATE PLUGGABLE DATABASE pdbnew FROM pdb@to_source FILE_NAME_CONVERT = ('+DATA/ORCL/6A7DB47A934B3D53E0534838A8C0FE32/DATAFILE/system.296.974205945', '/u01/data/R12201/pdbnew/system.dbf','+DATA/ORCL/6A7DB47A934B3D53E0534838A8C0FE32/DATAFILE/sysaux.297.974205947','/u01/data/R12201/pdbnew/sysaux.dbf','+DATA/ORCL/6A7DB47A934B3D53E0534838A8C0FE32/DATAFILE/undotbs1.293.974205945','/u01/data/R12201/pdbnew/undotbs1.dbf','+DATA/ORCL/6A7DB47A934B3D53E0534838A8C0FE32/DATAFILE/undo_2.306.974206187','/u01/data/R12201/pdbnew/undo_2.dbf','+DATA/ORCL/6A7DB47A934B3D53E0534838A8C0FE32/DATAFILE/users.304.974206191','/u01/data/R12201/pdbnew/users.dbf','+DATA/ORCL/6A7DB47A934B3D53E0534838A8C0FE32/TEMPFILE/temp.307.974205955','/u01/data/R12201/pdbnew/temp.dbf');
Pluggable database created.
7. 在目标 DB 启动 pdb:
SQL> alter pluggable database pdb open;
8. 检查目标 DB 上的 PDB_PLUG_IN_VIOLATIONS 是否有错误