限定oracle单服务器多instance的cpu资源

限制每个instance的cpu配额:
1.创建plan,名称为MAXCAP_PLAN

BEGIN
  DBMS_RESOURCE_MANAGER.CREATE_PENDING_AREA();
  DBMS_RESOURCE_MANAGER.CREATE_PLAN(
    PLAN    => 'MAXCAP_PLAN',COMMENT => 'Limit overall database cpu');
   
  DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE(
    PLAN              => 'MAXCAP_PLAN',GROUP_OR_SUBPLAN  => 'OTHER_GROUPS',COMMENT           => 'This group is mandatory',MAX_utilization_LIMIT => 90);

  DBMS_RESOURCE_MANAGER.VALIDATE_PENDING_AREA();
  DBMS_RESOURCE_MANAGER.SUBMIT_PENDING_AREA();
END;
/

说明:
MAX_utilization_LIMIT => 90 指定每个instance能使用的cpu资源的百分比。

2.还可以更进一步的针对细分cpu数量
例如
show parameter cpu_count
假设cpu_count为12,同一台服务器上有4个实例。分配方法假定:
inst1: 4cpu
inst2: 4cpu
inst3: 2cpu
inst4: 2cpu
则在每个实例上执行
alter system set cpu_count=cpu数量;
并且,需要指定instance的resource plan为MAXCAP_PLAN:
alter system set resource_manager_plan=MAXCAP_PLAN;

说明:
可以同时指定1和2步骤,则第一步的cpu限定可以调整为100%,只限制cpu数量; 也可以不执行第二步骤,只针对每个instance限制cpu最大配额。

相关文章

Java Oracle 结果集是Java语言中处理数据库查询结果的一种方...
Java AES和Oracle AES是现代加密技术中最常使用的两种AES加密...
Java是一种广泛应用的编程语言,具备可靠性、安全性、跨平台...
随着移动互联网的发展,抽奖活动成为了营销活动中不可或缺的...
Java和Oracle都是在计算机领域应用非常广泛的技术,他们经常...
Java 是一门非常流行的编程语言,它可以运行于各种操作系统上...