在Oracle Database 12c R2版本中,Oracle带来新的Application Containers特性,该特性对原有的多租户功能进行了增强,在CDB root容器中可以创建一个叫做Application root的容器,类似于CDB root,可在其内创建多个依赖于Application root的Application PDBs,其架构图如下:
在Application Container特性下还有另一个概念,被命名为“Application”,我们可以把“Application”理解为一个区域,“Application”只能创建在Application root中,其内可以创建表、视图、函数等公共对象,然后可在Application PDBs中使用sync同步命令,来实现“Application”内的公共对象共享到Application PDBs中。
本篇文章中,通过“Application Root/PDBs”与“Application”的创建开始带你认识Application Container特性,在第二篇中将带你了解“Application”内的公共对象(Application Common Objects),并通过实验让你对其有一个更加直观的认识。
Application root的创建
Application root与普通的PDB创建语句相似,在创建语句中需要指定“as application container”子句。
首先我们先设置db_create_file_dest
:
创建一个名qdatacon1的Application root:
这样一个名为qdatacon1的Application root就已经成功创建 ,可以通过视图dba_pdbs.application_root
字段查看是否是Application root,如下:
dba_pdbs.application_root
字段为YES
将QDatacon1打开:
注意,当在使用Application Containers特性时需要使用数据文件的OMF的管理方式,虽然在不使用OMF管理时依然可以成功创建Application root以及Applica