Oracle 19.3 多租户容器数据库介绍

作者公众号,欢迎一起交流。

Oracle 19.3 多租户容器数据库介绍_第1张图片

在Oracle 12c之前,一个数据库服务器一般只创建一个数据库,当创建的数据库比较多的时候,就需要更多的数据库服务器,而且,有些应用可能用不到整个数据库资源的十分之一,这对服务器资源(CPU、内存、存储)来说是一种浪费;如果管理的数据库比较多,数据库需要进行升级或者维护时,对DBA来说也是一个很大的挑战。从Oracle 12c开始,Oracle数据库引入了多租户特性,即容器数据库(CDB),可以在一个数据库服务器上创建容器数据库,容器数据库中可以再创建多个可插拔数据库(PDB),如此,多个可插拔数据库共享一套内存结构和后台进程,且每个可插拔数据库彼此物理隔离,每个可插拔数据库就像12c之前的数据库一样对外提供服务。这种多租户特性除了成本低好处外,还极大的减轻了DBA的负担,比如,对数据库进行升级时,只升级容器数据库即可,而且,由于它的可插拔特性,可以更方便的对数据进行迁移和管理。本篇将对Oracle 19c的多租户特性进行分享。

1 多租户架构

下图展示了多租户的架构,可以看出,一个容器数据库CDB由一个根容器(CDB$ROOT)、一个种子容器(PDB$SEED)和0个、1个或多个可插拔数据库(PDB)组成。其中,根容器包含一组主数据文件和元数据,种子容器是用于创建其它可插拔数据库的模板,可插拔数据库包括它自己的数据文件和应用程序对象(用户、表,索引等)。12c之前的数据库都是非容器数据库(non-CDB)。

说明:Oracle 12.2 后可以创建LOCAL UNDO表空间。

Oracle 19.3 多租户容器数据库介绍_第2张图片

 2 容器数据库创建

容器数据库(CDB)可由DBCA和Create Database ... ENABLE PLUGGABLE DATABASE进行创建,DBCA创建容器数据库可参照Oracle 19.3 数据库软件安装与建库详细教程。

3 管理Root容器数据库

3.1 连接Root容器

以SYS用户连接到Root容器可以执行与数据库相关的所有任务,可以通过OS身份验证或网络方式进行连接:

1)本地连接方式

[oracle@strong ~]$ sqlplus / as sysdba



SQL*Plus: Release 19.0.0.0.0 - Production on Fri Dec 17 22:21:51 2021

Version 19.3.0.0.0



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





Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.3.0.0.0



SQL>

2)EASY CONNECT连接方式

[oracle@strong ~]$ sqlplus sys/[email protected]:1521/orcl as sysdba



SQL*Plus: Release 19.0.0.0.0 - Production on Fri Dec 17 22:23:24 2021

Version 19.3.0.0.0



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





Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.3.0.0.0



SQL>

3)TNS连接方式

[oracle@strong ~]$ sqlplus sys/xxxx@myorcl as sysdba



SQL*Plus: Release 19.0.0.0.0 - Production on Fri Dec 17 22:25:36 2021

Version 19.3.0.0.0



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





Connected to:

Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production

Version 19.3.0.0.0



SQL>

3.2 展示当前连接的容器信息

可通过如下方式获得当前连接的容器信息:

1)SHOW命令

SQL&g

你可能感兴趣的:(Oracle,19c系列,oracle,database,CDB,PDB)