ORACLE  DBRM探讨(3)

勿忘初心2018-11-28 09:47

此文已由作者赵欣授权网易云社区发布。

欢迎访问网易云社区,了解更多网易技术产品运营经验。


查询数据现在有哪些资源用户组

select consumer_group, status from dba_rsrc_consumer_groups;


平时状态均为null,一旦新建了未决区(pending area),那么非原有资源用户组的状态为pending


查看资源计划

select plan from DBA_RSRC_PLANS;


查看资源计划指令

SELECT plan,group_or_subplan,cpu_p1,cpu_p2,cpu_p3, status  FROM dba_rsrc_plan_directives;


确认资源用户组的用户成员

SELECT username, initial_rsrc_consumer_group FROM dba_users;

监控各个资源用户组的资源使用情况

SELECT name,active_sessions,cpu_wait_time, consumed_cpu_time,current_undo_consumption

FROM v$rsrc_consumer_group;

查看当年会话所属的资源用户组

SELECT sid,serial#,username,resource_consumer_group FROM v$session;

查看当前激活的资源计划以及其子计划

SELECT name, cpu_managed, is_top_plan FROM v$rsrc_plan;


Is_to为true说明当前激活的计划是default_plan,并且打开了CPU管理

 通过V$RSRC_SESSION_INFO视图 来监控会话的相关状态

SELECT se.sid sess_id, co.name consumer_group,  

se.state, se.consumed_cpu_time cpu_time, se.cpu_wait_time,

se.queued_time FROM vrsrcsessioninfose,vrsrc_consumer_group co WHERE

se.current_consumer_group_id = co.id;

通过V$RSRC_PLAN_HISTORY 来监控资源会话的启停以及时间窗口

SELECT sequence# seq, 

name plan_name,

to_char(start_time,

'DD-MON-YY HH24:MM') start_time,

to_char(end_time,

'DD-MON-YY HH24:MM') end_time,

window_nameFROM v$rsrc_plan_history;

通过V$RSRC_CONS_GROUP_HISTORY 来监控资源是如何在资源用户组之间被共享

SELECT sequence# seq, name, cpu_wait_time, cpu_waits,consumed_cpu_time FROM v$rsrc_cons_group_history;

查看dbrm何时被激活,是否通过时间窗口的模式激活

select name,

to_char(start_time, 'MON DD HH24:MI') start_time,

to_char(end_time, 'MON DD HH24:MI') end_time,

window_name from v$rsrc_plan_history order by start_time;

如果window_name是空,说明dbrm是通过resource_manager_plan参数所激活

查看dbrm是如何被时间窗口所激活的,

select window_name,

resource_plan,

active from dba_scheduler_windows where resource_plan is not null and enabled = 'TRUE';

查看当前的资源计划是否包含自动切换组属性

select plan, group_or_subplan,

switch_time, switch_io_megabytes,

switch_io_reqs from dba_rsrc_plan_directives where plan in (select name from v$rsrc_plan)

and (switch_time is not null or switch_io_megabytes is not null or switch_io_reqs is not null);

当然很多查询和监控我们也可以通过OEM来操作

比如通过OEM查看系统预先定义好的DEFAULT_PLAN


在统计信息栏目中也可以看到很多前面使用语句查询的信息



可以看出OEM较为直观,但是仍然没有使用语句组合看到的信息那么丰富。


免费领取验证码、内容安全、短信发送、直播点播体验包及云服务器等套餐

更多网易技术、产品、运营经验分享请点击