ORACLE 12C CDB中PDB参数管理机制
2016-12-14 09:42
369 查看
转自:http://www.xifenfei.com/2013/06/oracle-12c-cdb%E4%B8%ADpdb%E5%8F%82%E6%95%B0%E7%AE%A1%E7%90%86%E6%9C%BA%E5%88%B6.html
在ORACLE 12C中参数文件只是记录了cdb的参数信息,没有记录任何的pdb的信息,那ORACLE是如何管理使得各个pdb有自己的参数,这里通过试验的出来ORACLE 12C CDB环境中是通过参数文件结合PDB_SPFILE$来实现参数管理
数据库版本
pdb信息
CDB$ROOT中修改参数
这里可以看出来,在ROOT中修改参数,默认情况和指定container=all/current均是所有open的pdb都生效.
这里有个疑问ORACLE的参数文件只是记录的cdb的sid的参数,并未记录各个pdb的参数,那是如何实现cdb中各个pdb参数不一致的呢?继续分析
修改pdb参数做10046
分析trace文件
通过这里我们发现在独立修改pdb参数之时,其本质是在pdb_spfile$基表中插入或者修改相关记录(第一次修改插入,后续修改是更新)
关于pdb_spfile$基表分析
证明pdb中不同于root的参数是记录在root的PDB_SPFILE$基表中.
整个CDB的工作原理是如果在PDB_SPFILE$中无相关参数记录,则继承cdb的参数文件中值,如果PDB_SPFILE$中有记录则使用该值覆盖cdb参数文件值.
删除PDB_SPFILE$验证
删除PDB_SPFILE$中相关记录,pdb的参数值会自动继续继承cdb中参数值
总结说明:通过上述的一些列试验证明cdb中参数关系,在cdb中修改,会默认所有pdb均自动继承;如果在pdb中修改值会覆盖cdb参数,而且只对当前pdb生效,并记录在PDB_SPFILE$
在ORACLE 12C中参数文件只是记录了cdb的参数信息,没有记录任何的pdb的信息,那ORACLE是如何管理使得各个pdb有自己的参数,这里通过试验的出来ORACLE 12C CDB环境中是通过参数文件结合PDB_SPFILE$来实现参数管理
数据库版本
这里有个疑问ORACLE的参数文件只是记录的cdb的sid的参数,并未记录各个pdb的参数,那是如何实现cdb中各个pdb参数不一致的呢?继续分析
修改pdb参数做10046
关于pdb_spfile$基表分析
整个CDB的工作原理是如果在PDB_SPFILE$中无相关参数记录,则继承cdb的参数文件中值,如果PDB_SPFILE$中有记录则使用该值覆盖cdb参数文件值.
删除PDB_SPFILE$验证
总结说明:通过上述的一些列试验证明cdb中参数关系,在cdb中修改,会默认所有pdb均自动继承;如果在pdb中修改值会覆盖cdb参数,而且只对当前pdb生效,并记录在PDB_SPFILE$
相关文章推荐
- Oracle 12c CDB 和 PDB 表空间管理和配置 说明
- Oracle 12c 配置和修改 CDB 和 PDB 参数
- Oracle 12c 多租户配置和修改 CDB 和 PDB 参数
- 详解oracle 12c数据库新特征CDB与PDB(热插拔数据库)以及表空间管理
- Oracle 12c 多租户配置和修改 CDB 和 PDB 参数
- ORACLE 12C新特性——CDB与PDB
- Oracle 空闲列表管理机制与pctfree和pctused参数
- 12c可插拔 数据库CDB与pdb管理总结
- oracle 12c 创建PDB用户即Local User (PDB与CDB)
- Oracle 12c CDB和PDB的切换
- Oracle 12c 新特性--CDB与PDB
- Oracle12cR2的CDB与PDB简单管理操作 推荐
- Oracle 12C -- Plug in a Non-CDB as a PDB
- ORACLE 12C之CDB与PDB
- ORACLE 12C新特性——CDB与PDB
- Oracle 12c PDB和CDB全局用户权限问题
- ORACLE 12C新特性——CDB与PDB
- oracle 12c pdb与cdb
- 详谈Oracle12c新特点容器数据库&可插拔数据库(CDB&PDB)
- Oracle 12C 将Non-PDB插入到CDB中