用户管理和数据库安全(二)

--用户概要文件在控制个别用户的资源使用方面很有效,但oracle宁愿你将概要文件主要用于密码管理。oracle建议使用database resource manager来控制资源的使用。

--除了dba的其他用户如果需要使用database resource manager需要赋权限:
 
SQL> EXEC dbms_resource_manager_privs.grant_system_privilege(grantee_name => 'scott',privilege_name => 'ADMINISTER_RESOURCE_MANAGER',admin_option => true);
PL/SQL procedure successfully completed

--使用database resource manager步骤:
--1、创建未决区:
SQL> exec dbms_resource_manager.create_pending_area;
PL/SQL procedure successfully completed

--2、创建资源消费组
SQL> exec dbms_resource_manager.create_consumer_group(consumer_group => 'local',comment => 'local councils');
PL/SQL procedure successfully completed

SQL> exec dbms_resource_manager.create_consumer_group(consumer_group => 'regional',comment => 'regional councils');
PL/SQL procedure successfully completed

SQL> exec dbms_resource_manager.create_consumer_group(consumer_group => 'national',comment => 'national councils');
PL/SQL procedure successfully completed
--查看数据库中存在哪些资源消费组
select consumer_group,status
from dba_rsrc_consumer_groups;
--oracle为每个数据库提供了3个默认的资源计划,即系统计划、内部计划、内部停顿:(怎么11g和10g看到的结果不一样)
select plan,comments,status from dba_rsrc_plans;
/
--3、创建资源计划
 
SQL> exec dbms_resource_manager.create_plan(plan => 'membership_plan',cpu_mth => 'RATIO',comment =>'New Membership Recruitment');
 
PL/SQL procedure successfully completed

--4、创建计划指示

---exec dbms_resource_manager.create_plan_directive(plan => 'prod_plan',group_or_subplan => 'dss_group',comment => 'Limit idle time',max_idle_time => 900,max_idle_blocker_time => 300);
exec dbms_resource_manager.create_plan_directive(plan => 'membership_plan',group_or_subplan => 'local',comment => 'local group',cpu_p1 => 70);

SQL> exec dbms_resource_manager.create_plan_directive(plan => 'membership_plan',group_or_subplan => 'regional',comment => 'regional group',cpu_p1 => 30);
 
PL/SQL procedure successfully completed
SQL> exec dbms_resource_manager.create_plan_directive(plan => 'membership_plan',group_or_subplan => 'national',comment => 'national group',cpu_p1 =>100);
 
PL/SQL procedure successfully completed

--5、验证未决区

SQL> exec dbms_resource_manager.validate_pending_area();
 
begin dbms_resource_manager.validate_pending_area(); end;
 
ORA-29382: 暂挂区验证失败
ORA-29377: 使用者组 OTHER_GROUPS 不是最高级计划 MEMBERSHIP_PLAN 的组成部分
ORA-06512: 在 "SYS.DBMS_RMIN", line 437
ORA-06512: 在 "SYS.DBMS_RESOURCE_MANAGER", line 798
ORA-06512: 在 line 2


在验证未决区这一步失败了,资料比较少,未查出是什么原因。
oracle管理艺术一书上:
如果不包含other_groups的资源指示,而且相应的计划指示用于主要的或顶层的计划,则oracle不允许将该指示用于other_groups中的其他组。

 
这一块先到这。。。。。。。。。。。。。。。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/25323853/viewspace-695162/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/25323853/viewspace-695162/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值