多租户架构能使Oracle数据库可用作多租户容器数据库(CDB)
一个多租户容器数据库(CDB)包含0个或多个自定义的可插拔数据库(PDBs)。PDB是一个包含schemas,schema objects,nonschema objects的集合。在12c之前,所有的oracle数据库都是非CDB。
1.关于CDB中的容器
每个CDB都有以下容器:
CDB root是所有PDB共有的,root包含了数据库提供的元数据(PL/SQL等源代码)和普通用户(每个PDB都拥有的用户)。root容器叫CDB$ROOT
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不属于其它容器。
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.关于多租户中的用户界面
我们可以像非多租户架构那样使用管理工具:
参考文章:
12
c
Release 2 (12.2)
Database Concepts
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31355629/viewspace-2638934/
,如需转载,请注明出处,否则将追究法律责任。