• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

Oracle 12C 将Non-PDB插入到CDB中

mysql 搞代码 4年前 (2022-01-09) 20次浏览 已收录 0个评论

使用dbms_pdb包进行迁移,dbms_pdb是12c新增加的,为了方便迁移用的。可以用desc dbms_pdb查看下具体参数。将Non-CDB数据库迁移到

进入到非CDB数据库中

查看数据文件的位置

[Oracle@shuang ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on Wed Feb 26 13:17:45 2014

Copyright (c) 1982, 2013, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup
ORACLE instance started.

Total System Global Area 1060585472 bytes
Fixed Size 2296472 bytes
Variable Size 704644456 bytes
Database Buffers 348127232 bytes
Redo Buffers 5517312 bytes
SQL> select name from v$datafile;

NAME
——————————————————————————–
/u01/app/oracle/oradata/SHUANG/datafile/o1_mf_system_9jckkfwg_.dbf
/u01/app/oracle/oradata/SHUANG/datafile/o1_mf_sysaux_9jckdvs6_.dbf
/u01/app/oracle/oradata/SHUANG/datafile/o1_mf_undotbs1_9jckpbno_.dbf
/u01/app/oracle/oradata/SHUANG/datafile/o1_mf_users_9jckp97s_.dbf

查看数据库为Non-CDB数据库

SQL> select name ,cdb from v$database;

NAME CDB
——— —
SHUANG NO

建立测试用户以及表

SQL> conn a/a
Connected.

SQL> select count(*) from a;

COUNT(*)
———-
1024

使用dbms_pdb包进行迁移,dbms_pdb是12c新增加的,为了方便迁移用的。可以用desc dbms_pdb查看下具体参数。

将Non-CDB数据库迁移到CDB数据库,得先将Non-CDB数据库设置为只读数据库,,再进行进一步操作。

SQL> shut immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

[oracle@shuang ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on Wed Feb 26 13:17:45 2014

Copyright (c) 1982, 2013, Oracle. All rights reserved.

Connected to an idle instance.

SQL> startup mount
ORACLE instance started.

Total System Global Area 1060585472 bytes
Fixed Size 2296472 bytes
Variable Size 704644456 bytes
Database Buffers 348127232 bytes
Redo Buffers 5517312 bytes

Database mounted

SQL>alter database open read only;

Database altered.

SQL> exec dbms_pdb.describe(PDB_DESCR_FILE=>’/u01/app/oracle/oradata/SHUANG/datafile/shuang12c.xml’);

PL/SQL procedure successfully completed.

SQL> host ls -l /u01/app/oracle/oradata/SHUANG/datafile/shuang12c.xml
-rw-r–r– 1 oracle oinstall 4123 2月 26 12:50 /u01/app/oracle/oradata/SHUANG/datafile/shuang12c.xml

SQL> shut immediate
Database closed.
Database dismounted.
ORACLE instance shut down.

在CDB中执行PLUG,就可以将这个Non-CDB插入CDB中,指定COPY参数,将文件复制到CDB的相应目录下,如果已经复制到特定目录,则可以指定NOCOPY选项,就无需再复制一遍。

进入到CDB数据库中。

SQL>create pluggable database shuang using ‘/u01/app/oracle/oradata/SHUANG/datafile/shuang12c.xml’ copy ;

PL/SQL procedure successfully completed.

SQL> select name,open_mode from v$pdbs;

NAME OPEN_MODE
—————————— ———-
PDB$SEED READ ONLY
PDBORCL M来源gaodai#ma#com搞@代~码$网OUNTED
SHUANG READ WRITE

SQL> alter session set container=shuang;

Session altered.

SQL> select count(*) from a.a;

COUNT(*)
———-
1024


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Oracle 12C 将Non-PDB插入到CDB中

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址