资源管理器

原创 2012年03月30日 17:10:58

一、资源管理器(DRM)由三个要素组成:

资源消费群(resource_consumer_group)
资源计划(resource_plan)
资源计划指令(resource_plan_directive)
 
执行与DRM有关的操作,必须具有 administer_resource_manager 系统权限。
 
二、未决域(pending area)
DRM的三个要素都必须创建在未决域中,然后提交。
 
1、创建未决域
exec dbms_resource_manager.create_pending_area;
 
2、验证未决域
exec dbms_resource_manager.validate_pending_area;
验证域中的内容是否合法。
 
3、清除未决域
exec dbms_resource_manager.clear_pending_area;
执行此命令后,未决域以及未决域中的内容一起被删除。
 
4、提交未决域
exec dbms_resource_manager.submit_pending_area;
执行此命令后,相当于执行了验证、提交、清除三个命令。未决域中的内容会被存储在数据字典中,等待启用。
 
三、资源消费群
一个用户可以隶属于多个消费群,但一个会话同一时间只能隶属于一个消费群。
ORACLE 已经预定义了4个消费群:
 
default_consumer_group :未分配消费群的用户和会话。
other_groups :当前的资源计划中没有明确指定资源分配所有消费群。任何一个资源计划中都必须包含此群。
sys_group 和 low_group :用于执行系统计划的消费群。
 
1、创建、更新、删除消费群()
 
创建:
exec dbms_resource_manager.create_cosumer_group('群名','注释');
 
更新:
exec dbms_resource_manager.update_consumer_group('群名','注释');
 
删除:
exec dbms_resource_manager.delete_consumer_group('群名');
执行此命令后,隶属于此群的用户和会话将自动转到 default_consumer_group.
 
 
2、将用户会话分配给消费群(消费群映射)
可以基于会话的属性将会话动态分配给消费群,成为消费群映射。
 
(1)设定映射:
dbms_resource_manager.set_consumer_group_mapping(
attribute => oracle_user,
value => 'user1,
consumer_group => 'low_group');
 
如上,当会话的oracle用户属性值为user1时,就将之分配给消费群low_group。
 
(2)设定映射优先权:
由于可能会出现某会话的两个属性分别满足两个不同的映射规则,那么该服从哪个规则呢?——可以设定各个属性的优先权,服从优先级高的属性。
dbms_resource_manager.set_mapping_priority(
oracle_user => 1,
client_os_user => 2);
 
(3)动态转换会话的消费群
 
基于会话的唯一标识转换消费群:(会话唯一标识由 session_id 和 session_serial 共同组成,这两个参数的值在 v$session 视图中)。
dbms_resource_manager.switch_consumer_group_for_sess(
session_id => '56',
session_serial => '106',
consumer_group => 'low_group');
 
基于会话所属的用户转换消费群:(将用户下的所有会话转换消费群)
dbms_resource_manager.switch_consumer_group_for_user(
user => 'user1',
consumer_group => 'low_group');
 
用户转换自己当前会话的消费群:(使用 dbms_session 包)
dbms_session.switch_current_consumer_group(
new_consumer_group => 'low_group');
 
转换自己当前会话的消费群需要特定权限:
dbms_resource_manager_privs.grant_switch_consumer_group(
grantee_name => 'user1',
consumer_group => 'low_group',
grant_option => 'false');
 
撤销此权限:
dbms_resource_manager_privs.revoke_switch_consumer_group(
grantee_name => 'user1',
consumer_group => 'low_group');
 
四、资源计划
分为简单资源计划和复杂资源计划。
 
1、简单资源计划
有如下特点:
(1)三要素在一个过程中定义。
(2)只能分配cpu资源。
(3)只能使用emphasis方式分配cpu资源(即百分比)。
(4)分配的消费群最大数为8个。
 
创建:
dbms_resource_manager.create_simple_plan(
simple_plan => '计划名',
consumer_group1 => '消费群1',
group1_cpu => 50,
consumer_group2 => '消费群2',
group2_cpu => 50);
 
 
2、复杂资源计划
特点:
(1)三要素必须单独创建。
(2)可以嵌套子计划。
 
创建:
dbms_resource_manager.create_plan(
plan => '计划名',
comment => '注释');
 
3、修改资源计划:
dbms_resource_manager.update_plan(
plan => '计划名',
new_属性 => '新值');
 
4、删除资源计划:
dbms_resource_manager.delete_plan('计划名');
dbms_resource_manager.delete_plan_cascade('计划名');
加上cascade参数,删除计划内的要素。
 
五、计划指令
 
创建:
dbms_resource_manager.create_plan_directive(
plan => '计划名',
group_or_subplan => '消费群或子计划',
资源限制参数);
 
注:可以为子计划创建指令,但只能分配cpu资源。
 
更新:
dbms_resource_manager.update_plan_directive(
两个必需参数,
new_属性 => '新值');
 
删除:
dbms_resource_manager.delete_plan_directive(
两个必需参数);

 

相关文章推荐

eclipse插件之----在eclipse中打开资源管理器

网上搜集,整理: 方法一: Run-->External Tools-->Open External Tools Dialog... new 一个 program location 里面填 :...
  • xubo578
  • xubo578
  • 2011年09月23日 23:05
  • 8591

Intellij Idea工具栏添加打开选中文件的资源管理器位置

Intellij Idea实现与MyEclipse中工具栏打开文件(或目录) 在windows资源管理器中的位置的功能...
  • SJZYLC
  • SJZYLC
  • 2015年12月04日 12:44
  • 17807

如何与资源管理器互动剪切/拷贝/粘贴文件

一.本文将向读者介绍下面两个问题的解决方案: 1,用户在资源管理器(Windows Explorer)中剪切/拷贝(Cut/Copy)文件,然后在自己的应用程序中进行粘贴(Paste)操作; ...

win7频繁提示资源管理器已停止工作解决办法

今天上班打开电脑,总是弹出windows资源管理器已停止工作,点击下方的【重新启动】,又恢复正常,但是不一会出现这个问题,如此反复,差不多一分钟左右出现一次,让人心烦意乱,没法工作! 一开始尝试...

eclipse在资源管理器中打开文件

在windows资源管理其中打开Eclipse中的文件

简单中级项目Servlet/JSP实现web版windows资源管理器

java中级学完之后就可以自己写一些小项目,比如一些博客、商城。用到的技术也只是Servlet+JSP,练习才是最好的老师。下面介绍一个最简单的练手项目,模仿windows的文件管理,功能比较单一。就...

CRM2011资源管理器V1.0发布

CRM2011资源管理器 绿色版下载 安装版下载 一、关于        CRM2011资源管理器是一款为了实现Microsoft Dynamics CRM2011快速开发的工具。目前实现的功...
  • lujyu99
  • lujyu99
  • 2013年03月05日 00:38
  • 921

关于利用Flex lineChart绘制类似win系统下资源管理器时序图的例子

最近因为项目需要,需要实现linechart下的数据及时推进效果,类似win系统中监控cup资源的折线图效果,推进方向是从右到左,后来又扩展了从左到右边的方式,具体见代码。 从右边到左边的推荐,样式没...

让 Win7 的资源管理器直接打开“计算机”,关闭和恢复“库”

让 Win7 的资源管理器直接打开“计算机”   右击任务栏上的资源管理器图标,再次右击快捷菜单中的windows 资源管理器,打开属性对话框,将原来目标中的 %windir%\explor...

C# TreeView 磁盘文件,资源管理器,AfterSelect,显示加号

可以看到,项的前面都显示了加号(+),而且读取了磁盘的文件。代码如下 主程序代码: using System; using System.Collections.Generic; using Sy...
  • luolunz
  • luolunz
  • 2012年08月30日 11:20
  • 2814
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:资源管理器
举报原因:
原因补充:

(最多只允许输入30个字)