Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1148979
  • 博文数量: 231
  • 博客积分: 2500
  • 博客等级: 少校
  • 技术积分: 2662
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-03 16:35
个人简介

学无止境

文章分类

全部博文(231)

文章存档

2014年(7)

2013年(103)

2011年(11)

2010年(53)

2009年(57)

分类: Oracle

2013-12-02 11:10:10

创建资源定制组:
 
dbms_resource_manager.create_consumer_group(
consumer_group IN VARCHAR2,
comment IN VARCHAR2,
cpu_mth IN VARCHAR2 DEFAULT 'ROUND-ROBIN');
 
cpu_mth默认是ROUND-ROBIN,每个会话都平均使用CPU
如果设置为RUN-TO-COMPLETION,则最大活动时间的会话会在其他会话之前调度。
 
使用creative_plan_directive将定制组合资源计划相关联:
例如:
 dbms_resource_manager.create_plan_directive(
  plan => 'SINGLE_LEVEL_PLAN',
  group_or_subplan => 'BATCH_Group',
  comment => 'batch day users sessions at level 1',
  cpu_p1 => 10,
  active_sess_pool_p1 => 1,
  parallel_degree_limit_p1 => 10);
 
使用该存储过程,赋给用户具有切换到该资源组的权限。
dbms_resource_manager_privs.grant_switch_consumer_group
 
dbms_resource_manager_privs.grant_switch_consumer_group(
  grantee_name => 'BATCH',
  consumer_group => 'BATCH_Group',
  grant_option => FALSE);
 
 
 
-- 查询用户的初始化资源组
select username, initial_rsrc_consumer_group from dba_users;
 
-- 设置用户的资源组
begin
DBMS_RESOURCE_MANAGER.CREATE_PENDING_AREA();
DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING(DBMS_RESOURCE_MANAGER.ORACLE_USER,'LDY','OLTP_GROUP');
DBMS_RESOURCE_MANAGER.VALIDATE_PENDING_AREA();
DBMS_RESOURCE_MANAGER.SUBMIT_PENDING_AREA();
end;
/
 
begin
DBMS_RESOURCE_MANAGER.SET_INITIAL_CONSUMER_GROUP(USER => 'LDY',CONSUMER_GROUP =>'CPU_LIMIT'); 
end;
/
 

DBMS_RESOURCE_MANAGER.SET_CONSUMER_GROUP_MAPPING
这个过程可以对映射到资源的会话,添加、删除或修改属性条目。该过程执行之后,对现有会话立即生效
执行该过程时,需要创建未决区。
DBMS_RESOURCE_MANAGER.SET_INITIAL_CONSUMER_GROUP
设置用户的初始资源组,在会话登录时生效。
该过程的执行,不需要创建未决区。
 

-- 对已登录的LDY用户进行资源组手动切换
begin
dbms_resource_manager.switch_consumer_group_for_user(USER => 'BATCH' ,CONSUMER_GROUP => 'OLTP_GROUP');
end;
/
-- 对特定session进行资源组手动切换
begin
DBMS_RESOURCE_MANAGER.SWITCH_CONSUMER_GROUP_FOR_SESS(session_id=> 144 ,session_serial => 21,CONSUMER_GROUP => 'OLTP_GROUP');
end;
/


 

阅读(1045) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~