博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle12c多租户如何连接到CDB或PDB、CDB与PDB容器切换
阅读量:6998 次
发布时间:2019-06-27

本文共 2159 字,大约阅读时间需要 7 分钟。

Oracle 数据库 12 c 多租户选项允许单个容器数据库 (CDB) 来承载多个单独的可插拔数据库 (PDB)。

那么我们如何连接到容器数据库 (CDB) 和可插拔数据库 (PDB)。
1. V$SERVICES视图可以显示数据库中的可用服务。
SQL> col pdb for a40
SQL> col name for a30;
SELECT name, pdb FROM v$services ORDER BY name;SQL> 
NAME       PDB
------------------------------ ----------------------------------------
SYS$BACKGROUND       CDB$ROOT
SYS$USERS       CDB$ROOT
andycdb       CDB$ROOT
andycdbXDB       CDB$ROOT
pdb01       PDB01
-- lsnrctl实用程序显示可用的服务。
[oracle@12c01 ~]$ lsnrctl status
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=12c01)(PORT=1521)))
Services Summary...
Service "4ecf8621e3da38eee0531019640aa598" has 1 instance(s).
  Instance "andycdb", status READY, has 1 handler(s) for this service...
Service "andycdb" has 1 instance(s).
  Instance "andycdb", status READY, has 1 handler(s) for this service...
Service "andycdbXDB" has 1 instance(s).
  Instance "andycdb", status READY, has 1 handler(s) for this service...
Service "pdb01" has 1 instance(s).
  Instance "andycdb", status READY, has 1 handler(s) for this service...
The command completed successfully
2.直接连接到一个容器数据库 (CDB)
连接到数据库的根容器和连接以前版本的单个数据库实例相同。在数据库服务器上,您可以使用操作系统身份验证。

方法一:

[oracle@12c01 ~]$ sqlplus / as sysdba   

方法二:

或者 tnsnames.ora 文件配置

ANDYCDB =

  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 12c01)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = andycdb)
    )
  )

C:\Users\andy>sqlplus sys/oracle@10.100.25.16:1521/andycdb as sysdba

 

3.直接连接到一个可插拔的数据库 (PDB)

 tnsnames.ora 文件配置:

PDB01 =

  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 10.100.25.16)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = pdb01)
    )
  )

C:\Users\andy>sqlplus sys/oracle@10.100.25.16:1521/pdb01 as sysdba

SQL> show con_name
CON_NAME
------------------------------
PDB01
说明:PDB 具有 SYSDBA、 SYSOPER、 SYSBACKUP 或 SYSDG 特权的用户可以连接到已关闭的 PDB。
PDB 的所有其他用户(CONNECT SESSION权限的用户)仅可以连接已经打开的PDB。
4. 容器之间切换
SQL> ALTER SESSION SET container=pdb01;
Session altered.
SQL> show con_name
CON_NAME
------------------------------
PDB01
SQL> alter session set container=cdb$root;
Session altered.
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT

转载于:https://www.cnblogs.com/andy6/p/6815918.html

你可能感兴趣的文章
我的友情链接
查看>>
我的友情链接
查看>>
无聊,用c写了个后台扫描
查看>>
洛谷——P2434 [SDOI2005]区间
查看>>
WDS+MDT+WAIK简单部署Win7之捕捉映像
查看>>
致即将逝去的青春
查看>>
haproxy,能够实现将来自用户的80端口的http请求转发至后端8000上的server服务
查看>>
Windows Server 2008 如何去除“IE 增加的安全配置”
查看>>
Emeditor自动切换到单元格选择模式
查看>>
awk学习
查看>>
我的友情链接
查看>>
mongodb中的副本集搭建实践
查看>>
Javascript 实现形如Extjs中的“关闭并带回”
查看>>
resources.resx相关
查看>>
oracle中如何用提示符显示用户状态?
查看>>
CentOS转的服务器磁盘规划
查看>>
Oracle基础知识之物理存储结构
查看>>
我的友情链接
查看>>
哈佛结构与冯?诺伊曼结构区别
查看>>
耶鲁大学心态 ,送给正在奋斗的人 !
查看>>