首页 > 数据库 > Oracle > 【CDB】怎样修改PDB的内存参数
多租户环境中的内存参数管理(CDB 和 PDB )
随着多租户数据库的数显,容器数据库(CDB )和相关的可插拔数据库( PDB )之间的内存管理仍然出现着一些问题。在处理 12c 及以上版本的多租户数据库时,意味着 CDB 中的特定参数的值被一个或多个 pdb 继承。有些参数可以在 PDB 级别修改,并覆盖从 CDB 继承的内容。要确定哪些参数可以从 PDB 中修改, v$system_parameter 视图中的 ispdb_modifiable 列必须为 true 。如果 ispdb_modifiable 为 true ,则该参数从 CDB 继承该值,直到 PDB 使用 alter system set 命令修改该值。
1) 连接到PDB
SQL> ALTER SESSION SET CONTAINER= PDB1 ;
2) 进入到PDB 后,我们需要知道哪些参数是可以修改的,可以使用下面的 SQL 语句找到这些参数, ispdb_modifiable 必须为 true 。
SQL> SELECT NAME FROM V$SYSTEM_PARAMETER
WHERE ISPDB_MODIFIABLE = 'TRUE'
ORDER BY NAME;
3) 使用以下命令进行修改
SQL> ALTER SYSTEM SET PGA_AGGREGATE_TARGET= 800M SCOPE=SPFILE;
(由于修改的是PDB1 的静态参数,需要重启 PDB1 生效。注意修改单个 PDB 的参数,只需要重启相应 PDB 即可)
现在已经修改了参数,我们可以在PDB 级别的 v$parameter 视图上看到这个更改。如果你想看到的参数的设置范围( CDB or PDB ),我们可以使用视图 v$system_paramete 。下面的 SQL 将显示 CDB 和 PDB 的 PGA_AGGREGATE_TARGET 参数(注意 con_id 列)
4) 进入到CDB
SQL> alter session set container=cdb$root;
5) 执行以下查询
SQL> col name for a30
SQL> col value for a 20
SQL> col DISPLAY_VALUE for a 10
SQL> set linesize 200
SQL> SELECT NAME, VALUE, DISPLAY_VALUE, CON_ID
FROM V$SYSTEM_PARAMETER
WHERE NAME = 'pga_aggregate_target'
ORDER BY NAME;
NAME VALUE DISPLAY_VA CON_ID
------------------------------ -------------------- ---------- ----------
pga_aggregate_target 1666187264 1589M 0
pga_aggregate_target 838860800 800M 3
上面结果显示,0 号容器( CDB )的 PGA 为 1589M ,3 号容器的 PGA 为 800M 。
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB1 READ WRITE NO
4 PDB2 READ WRITE NO
5 PDB3 READ WRITE NO
再结合show pdbs 命令,可知 3 号容器就是修改的 PDB1 容器
可以通过多个初始化参数控制PDB 的内存使用情况。当我们以 PDB 作为当前容器设置初始化参数时,这些参数控制当前的 PDB 的内存使用情况。当为一个 PDB 设置了这些参数中的一个或多个时,请确保 CDB 和其他 PDB 有足够的内存可用。
当我们在PDB 级别修改完 pga_aggregate_target 参数后,需要重启该PDB 生效。然后我们可以尝试在 PDB 级别创建 pfile
SQL> alter session set container=pdb1;
SQL> create pfile='/home/oracle/initpdb1.ora' from spfile;
$ cat /home/oracle/ initpdb1.ora
*.pga_aggregate_target=838860800
生成的pfile 内容仅有我们修改的一行。
---- end ----
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31529886/viewspace-2749437/,如需转载,请注明出处,否则将追究法律责任。