oracle pdb与cdb区别,12C关于CDB、PDB参数的区别和总结

以下结论皆经过实验验证,版本12.2,为方便理解,本文中CDB指的是根容器CDB$ROOT

1、CDB和PDB共用一个参数文件,CDB使用spfileSID.ora,则PDB里面show parameter spfile时看到的也是spfileSID.ora,CDB使用spfile.ora,则PDB里面show parameter spfile时看到的也是spfile.ora,CDB使用initSID.ora,则PDB里面show parameter spfile时也看不到任何文件,PDB的参数信息不会出现在spfile或pfile文件中,而是直接从CDB中继承。

2、CDB执行alter system修改参数无论加不加CONTAINER,也无论CONTAINER值是ALL还是CURRENT,PDB也一样修改了;PDB执行alter system修改参数,只对该PDB生效,PDB执行alter system修改参数不能加CONTAINER = ALL,否则报错ORA-65050: Common DDLs only allowed in root,CONTAINER = ALL只能在CDB容器执行。

以下两条语句等价,因为CONTAINER的默认值是CURRENT

ALTER SYSTEM SET parameter_name=value;

ALTER SYSTEM SET parameter_name=value CONTAINER=CURRENT;

以下两条语句在CDB中等价,因为CDB修改了,PDB也一样修改了

ALTER SYSTEM SET parameter_name=value;

ALTER SYSTEM SET para

你可能感兴趣的:(oracle,pdb与cdb区别)