linux redhat & Oracle

如何快速把一个11g数据库插入到12c cdb中去?

2019-01-28  本文已影响0人  重庆思庄

使用DBMS_PDB把一个11g数据库插入到12c cdb中去

环境:

windows 7

源库:orcl oracle 11.2.0.4

目标库:cdbdb 12.2.0.1 ,pdb:sztech

1.源库先升级到12c

这个步骤略,可以通过dbua完成

2.原库以只读方式打开

SQL> conn / as sysdba

已连接。

SQL> shutdown immediate

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL> startup open read only;

SQL> show parameter db_name

NAME TYPE VALUE

db_name string orcl

SQL> select open_mode from v$database;

OPEN_MODE

READ ONLY

SQL>

3.源库生成xml信息

SQL> EXEC DBMS_PDB.DESCRIBE('d:orcl.xml');

PL/SQL 过程已成功完成。

4.把源库的数据文件及xml文件拷贝到目标库所在机器

5.修改xml文件中数据文件的位置,与实际位置相匹配

比如新的文件位置为:

D:oracleoradatacdbdbsztech

6.使用有 CREATE PLUGGABLE DATABASE 权限的用户登陆目标库

sqlplus /nolog

sql>conn / as sysdba

SQL> conn / as sysdba

已连接。

SQL> show pdbs

CON_ID CON_NAME OPEN MODE RESTRICTED

2 PDB$SEED READ ONLY NO

SQL>

7.插入目标库

在目标库,把源库orcl以 sztech为pdb名字插入目标容器库中

--由于文件已经拷贝到目标,在命令行上带上 nocopy,否则,可以使用 FILE_NAME_CONVERT ('xml文件中数据文件位置','新的位置')

CREATE PLUGGABLE DATABASE sztech USING 'd:orcl.xml' nocopy tempfile reuse;

SQL> CREATE PLUGGABLE DATABASE sztech USING 'd:orcl.xml' nocopy tempfile reuse;

插接式数据库已创建。

SQL>

查看一下pdb情况

SQL> show pdbs

CON_ID CON_NAME OPEN MODE RESTRICTED

2 PDB$SEED READ ONLY NO

4 SZTECH MOUNTED

SQL>

8.运行noncdb_to_pdb.sql脚本

切换到sztech pdb

SQL> alter session set container=sztech;

会话已更改。

SQL> show con_name

CON_NAME

SZTECH

SQL>

--执行脚本noncdb_to_pdb.sql脚本

@%ORACLE_HOME%/rdbms/admin/noncdb_to_pdb.sql

9.最后打开pdb

alter pluggable database sztech open;

SQL> show pdbs

CON_ID CON_NAME OPEN MODE RESTRICTED

4 SZTECH MOUNTED

SQL> alter pluggable database open;

插接式数据库已变更。

SQL> show pdbs

CON_ID CON_NAME OPEN MODE RESTRICTED

4 SZTECH READ WRITE NO

SQL>

重庆思庄_Oracle数据库服务,重庆Oracle认证培训 ,重庆IBM培训,第三方专业Oracle数据库服务商.西南唯一一家拥有OCM师资的OCP认证培训机构,和Oracle服务商。
上一篇下一篇

猜你喜欢

热点阅读