Oracle 19c:CDB到PDB的转换

CDB:数据库容器;PDB:可插拔数据库。在CDB下的用户称公共用户,在PDB下的用户称为本地用户。

一、在CDB下创建公共用户

在 sqlplus 下用 system 登陆 CDB 数据库(默认情况下直接登陆的就是CDB数据库),然后创建用户:

create user c##Cui identified by 12345678;

 注意:创建公共用户命名必须以 c## 或 C## 开头,否则无法创建。

二、在PDB下创建公共用户

1、在 sqlplus 下用 sys 登陆 CDB 数据库(一般的话 sys 用户和 system 用户都是有 sysdba 权限的)。

请输入用户名:  sys/12345678 as sysdba

连接到:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

2、查看当前容器 

SQL> show con_name

CON_NAME
------------------------------
CDB$ROOT

3、查看CDB下的可插拔数据库


SQL> select con_id, dbid, guid, name , open_mode from v$pdbs;
 
--------------------------------------------------------------------------
    CON_ID       DBID GUID                             NAME     OPEN_MODE
---------- ---------- -------------------------------- -------- ----------
         2 3195523951 71326CF0C2304EDB9A6282A10DBB2AAF PDB$SEED READ ONLY
         3  730618075 995DED9EB8F54A08A8EF42453401B874 ORCLPDB  READ WRITE
--------------------------------------------------------------------------

4、配置 tns,在客户端服务端分别加上如下内容

①找到 tnsnames.ora 文件:

Orcale\network\admin\tnsnames.ora

②添加以下内容( service_name 根据自己的插拔数据库命名):

ORCLPDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orclpdb)
    )
  )

5、启动PDB数据库

SQL> alter pluggable database ORCLPDB open;
alter pluggable database ORCLPDB open
*
第 1 行出现错误:
ORA-65019: 插接式数据库 ORCLPDB 已打开

6、切换至ORACLPDB

SQL> alter session set container=ORCLPDB;

会话已更改。

SQL> show con_name

CON_NAME
------------------------------
ORCLPDB

可以看到当前容器已经修改。

SQL> select con_id, dbid, guid, name , open_mode from v$pdbs;
 
--------------------------------------------------------------------------
    CON_ID       DBID GUID                             NAME     OPEN_MODE
---------- ---------- -------------------------------- -------- ----------
         3  730618075 995DED9EB8F54A08A8EF42453401B874 ORCLPDB  READ WRITE
--------------------------------------------------------------------------

参考:

  1. oracle12c创建用户,在PDB下创建scott用户,并创建相关表_落俗zp的博客-CSDN博客

  2. 在oracle里安装TRSWCM时错误ORA-28009以sysdba或sysoper身份建立sys连接怎么解决,谢谢_百度知道 (baidu.com)

你可能感兴趣的:(Oracle,小记录,oracle,CDB,PDB)