暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

12cR2中PDB内存资源管理

原创 逆风飞翔 2021-10-22
579

12cR2中PDB内存资源管理

在Oracle 12.2中,你可以控制某单个PDB能使用的内存总量。

PDB内存参数

下列参数都可以在PDB级别进行设置:

DB_CACHE_SIZE : The minimum buffer cache size for the PDB.

SHARED_POOL_SIZE : The minimum shared pool size for the PDB.

PGA_AGGREGATE_LIMIT : The maximum PGA size for the PDB.

PGA_AGGREGATE_TARGET : The target PGA size for the PDB.

SGA_MIN_SIZE : The minimum SGA size for the PDB.

SGA_TARGET : The maximum SGA size for the PDB.


设置PDB内存参数
设置PDB内存参数的过程和设置一个普通实例的存储参数并没有什么区别。下面的例子是修改SGA_TARGET参数。
检查CDB的当前设置:
CONN AS SYSDBA
S
SHOW PARAMETER sga_target;

NAME                                 TYPE       VALUE
-
------------------------------------ ----------- ------------------------------
s
sga_target                           big integer 2544M
S
SQL>
检查PDB的当前设置:
CONN AS SYSDBA
A
ALTER SESSION SET CONTAINER=pdb1;

SHOW PARAMETER sga_target;
N
NAME                                 TYPE       VALUE
-
------------------------------------ ----------- ------------------------------
s
sga_target                           big integer 0
S
SQL>
设置PDB的SGA_TARGET参数:
SQL> ALTER SYSTEM SET sga_target=1G SCOPE=BOTH;
SQL> SHOW PARAMETER sga_target;
N
NAME                                 TYPE       VALUE
-
------------------------------------ ----------- ------------------------------
s
sga_target                           big integer 1G


监控PDB的内存使用

Oracle提供了一些视图来监控PDB的资源使用(例如CPU、I/O、内存)。每个视图包含相同的信息,只是保留时间不同。

V$RSRCPDBMETRIC:一个PDB对应一条记录,只保留最近一分钟的数据

V$RSRCPDBMETRIC_HISTORY:一个PDB对应61行记录,保留最近60分钟的数据

DBA_HIST_RSRC_PDB_METRIC:AWR快照,保留时间基于AWR的保留时间

例子如下:

CONN / AS SYSDBA

SET LINESIZE 150
COLUMN pdb_name FORMAT A10
COLUMN begin_time FORMAT A26
COLUMN end_time FORMAT A26

ALTER SESSION SET NLS_DATE_FORMAT='DD-MON-YYYY HH24:MI:SS';
ALTER SESSION SET NLS_TIMESTAMP_FORMAT='DD-MON-YYYY HH24:MI:SS.FF';

-- Last sample per PDB.
SELECT r.con_id,
p.pdb_name,
r.begin_time,
r.end_time,
r.sga_bytes,
r.pga_bytes,
r.buffer_cache_bytes,
r.shared_pool_bytes FROM v$rsrcpdbmetric r,cdb_pdbs p WHERE r.con_id = p.con_idORDER BY p.pdb_name;

-- Last hours samples for PDB1

SELECT r.con_id,
p.pdb_name,
r.begin_time,
r.end_time,
r.sga_bytes,
r.pga_bytes,
r.buffer_cache_bytes,
r.shared_pool_bytes FROM v$rsrcpdbmetric_history r, cdb_pdbs p
WHERE r.con_id = p.con_id AND p.pdb_name = 'PDB1' ORDER BY r.begin_time;

-- All AWR snapshot information for PDB1.

SELECT r.snap_id,
r.con_id,
p.pdb_name,
r.begin_time,
r.end_time,
r.sga_bytes,
r.pga_bytes,
r.buffer_cache_bytes,
r.shared_pool_bytes FROM dba_hist_rsrc_pdb_metric r,
cdb_pdbs p WHERE r.con_id = p.con_id AND p.pdb_name = 'PDB1'ORDER BY r.begin_time;

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论