Oracle 19c 多租户体系架构介绍

多租户中术语介绍

Oracle从12c开始推出了多租户CDB架构,到19c,26ai仍然保留了该架构。

2013年12.1推出了CDB架构,同时也支持NON-CDB(非多租户架构),19c是最后一个支持NON-CDB的架构。

传统架构vs多租户架构

传统架构中一套应用系统上线需要对应一套基础环境包括数据库和中间件等,每个数据库都需要DBA来管理,当然一个DBA也可以管理多个库。多租户架构中一个CDB中可以有多个PDB,多个应用系统的数据库可以合理的整合到PDB中,DBA把一个CDB当作一个数据库数据库来管理,这样可以提高运行效率,节约成本。

多租户数据库(CDB)的组件

19c多租户包括以下组件:

  • 根容器-CDB$ROOT
  • 种子库-PDB$SEED
  • 应用容器
    应用种子库
    应用PDB
  • PDBS

19c多租户架构-CDB无应用容器

  • 每个PDB对应一套应用系统
  • 不同的PDB管理员管理每个PDB
  • 从物理层来说,CDB与NON-CDB一样有一个实例和一组数据库文件

    19c多租户架构-CDB有应用容器
  • CDB管理员对CDB本身进行管理
  • 应用容器管理员管理应用容器,包括应用程序安装和升级
  • 每个PDB管理PDB自身

19c多租户架构-根容器-CDB$ROOT

  • 在创建CDB时创建的第一个容器
    -自动创建了这些表空间:SYSTEM,SYSAUX,TEMP,UNDO
  • CDB架构中必须包括该容器
  • Oracle系统提供的公共对象和元数据库
  • Oracle系统提供的公共用户和角色
  • 该容器不存储应用程序的业务数据

19c多租户架构-种子库-PDB$SEED

  • Seed(PDBSEED):seed容器,名称PDBSEED):seed容器,名称PDBSEED):seed容器,名称PDBSEED
  • 创建PDB的模板
  • 在所有CDB中都创建

19c多租户架构-应用容器-Application Container

是一个可选的多租户容器组件

  • 为应用程序存储数据和元数据
  • 一个CDB包含零个或多个应用程序容器
  • 应用程序根存储所有应用程序pdb可以共享的元数据和数据
sql 复制代码
SQL >CREATE
   PLUGGABLE DATABASE statement with the AS APPLICATIONCONTAINER clause

19c多租户架构-PDB

应用程序的容器

  • 表空间
  • 方案/对象/权限
  • 种子库是特定的PDB

19c多租户逻辑架构

多租户架构中如何区分容器

12c-19c多租户特性

相关推荐
强健的石头14 分钟前
django文件对象是什么?
数据库·django·sqlite
ClouGence1 小时前
保障公共安全,一线治安机构实时数据应用与实践
数据库·mysql·postgresql
烟漠河洛1 小时前
线上事故复盘:Redis幂等性设计边界没覆盖跨状态请求,订单状态机直接崩了
数据库·redis·缓存
Minxinbb1 小时前
TDSQL for MySQL 服务器重启操作
数据库·mysql·dba
SelectDB1 小时前
Doris 实战:用 Colocate Join 消除 Shuffle,AB 指标计算性能提升 145 倍 🚀
数据库·性能优化·ab测试
PawSQL2 小时前
PawSQL 技术月报 | 2026年6月
数据库·sql·tdsql·pawsql·sql审核
SelectDB2 小时前
Apache Doris 在 AgentLogsBench 中领先,支撑 Agent 可观测性生产负载
运维·数据库·agent
会写代码的建筑师2 小时前
C# 源生成器使用方法
后端·架构
聚美智数2 小时前
黄历查询-运势查询-国际法定节假日查询-API接口介绍
android·java·数据库
没落英雄4 小时前
3. DeepAgents 实战 - Memory Skills 与上下文工程
前端·人工智能·架构