oracle限制cpu数量,限定oracle单服务器多instance的cpu资源

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

限制每个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最大配额。

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。