[Oracle][Standby][PDB]在PDB中修改参数,设置范围为 SPFILE,报 ORA-65099错误
[Oracle][Standby][PDB]在PDB中修改参数,设置范围为 SPFILE,报 ORA-65099错误
在Data Gaurd 的 Standby (或 CDB 是 Read Only )中,在PDB下,执行如下SQL 出错:
SQL> ALTER SYSTEM SET SGA_TARGET = 800 M SCOPE = SPFILE;
ALTER SYSTEM SET SGA_TARGET = 800 M SCOPE = SPFILE
*
An error occurred on line 1. :
ORA-65099: Can not perform operation if CDB is not open
Also, even if CDB was opened with read only, the same error occurred and could not be changed.
经过调查,发现:
当我在PDB 中修改参数,指定了 SCOPE= SPFILE 的时候,
其实是要写入到 pdb_spfile$ 这张表的 ,但是这个内部表 是在 CDB中。
而CDB 是 Read Only 状态,实际上写不成,所以报错。 这是一个正常的行为,不算Bug。
当然,这表明PDB 对 CDB 的依赖还是有点大。