关于多租户架构

来源:这里教程网 时间:2026-03-03 13:13:59 作者:
多租户架构能使Oracle数据库可用作多租户容器数据库(CDB)

一个多租户容器数据库(CDB)包含0个或多个自定义的可插拔数据库(PDBs)。PDB是一个包含schemas,schema objects,nonschema objects的集合。在12c之前,所有的oracle数据库都是非CDB。

1.关于CDB中的容器
  • 容器是多租户架构中一个包含数据和元数据的集合。
    每个CDB都有以下容器:
  • 一个CDB root容器(简称root)
            CDB root是所有PDB共有的,root包含了数据库提供的元数据(PL/SQL等源代码)和普通用户(每个PDB都拥有的用户)。root容器叫CDB$ROOT
  • 一个system容器
            system container包含了root CDB和所有的PDBs,所以system container是CDB自身的逻辑架构。
  • 0或多个applications container
            application container只包含一个application root以及插入此root的PDB。system container包含CDB root和所有的PDB,而application container仅包含插入application root的PDB,application container root属于CDB root不属于其它容器。
  • 0或多个用户自创的PDBs
  • 一个seed PDB
            seed PDB是Oracle提供用来创建新PDBs的模板, seed PDB叫PDB$SEED,不能增加或修改PDB$SEED的对象。

    1.1.CDB with No Application Containers

    这是一个没有使用application container的CDB。这个CDB包含CDB$ROOT、PDB$SEED和两个PDBs。每个PDB都有独立的应用,每个PDB都有不同的管理员。CDB管理员可以管理CDB和所有的PDBs。

    1.2CDB with an Application Container

    这是一个使用application container的CDB。多个DBAs管理这个CDB环境:
  • 一个CDB管理员管理CDB
  • 一个application container管理员管理saas_sales_ac容器,包括application安装和升级
  • 一个application PDB管理员管理2个PDBs:cust1_pdb和cust2_pdb
  • 一个PDB管理员管理hrpdb
    2.关于多租户中的用户界面
        我们可以像非多租户架构那样使用管理工具:
  • SQL*Plus
  • Oracle Enterprise Manager Cloud Control(Cloud Control)
  • Oracle Enterprise Manager Database Express(EM Express)
  • Oracle Database Configuration Assistant(DBCA)

    参考文章: 12 c  Release 2 (12.2)    Database Concepts

  • 相关推荐