begin
dbms_resource_manager.clear_pending_area();
dbms_resource_manager.create_pending_area();
dbms_resource_manager.create_consumer_group(
consumer_group =>
'APEX_HIGH'
,
comment =>
'All APEX sessions start in this group.'
);
dbms_resource_manager.create_consumer_group(
consumer_group =>
'APEX_MEDIUM'
,
comment =>
'APEX sessions are switched to this group after 10 seconds.'
);
dbms_resource_manager.create_consumer_group(
consumer_group =>
'APEX_LOW'
,
comment =>
'Any sessions in this group have been executing for more than 120 seconds'
);
dbms_resource_manager.submit_pending_area();
end
;
/
begin
dbms_resource_manager_privs.grant_switch_consumer_group (
grantee_name =>
'APEX_PUBLIC_USER'
,
consumer_group =>
'APEX_HIGH'
,
grant_option =>
FALSE
);
dbms_resource_manager_privs.grant_switch_consumer_group (
grantee_name =>
'APEX_PUBLIC_USER'
,
consumer_group =>
'APEX_MEDIUM'
,
grant_option =>
FALSE
);
dbms_resource_manager_privs.grant_switch_consumer_group (
grantee_name =>
'APEX_PUBLIC_USER'
,
consumer_group =>
'APEX_LOW'
,
grant_option =>
FALSE
);
end
;
/
begin
dbms_resource_manager.clear_pending_area();
dbms_resource_manager.create_pending_area();
dbms_resource_manager.create_plan( plan =>
'APEX_ORACLE_COM_PLAN'
, comment =>
'APEX Plan'
);
dbms_resource_manager.create_plan_directive(
plan =>
'APEX_ORACLE_COM_PLAN'
,
group_or_subplan =>
'APEX_HIGH'
,
comment =>
'All APEX sessions start in this group.'
,
mgmt_p1 => 70,
switch_group =>
'APEX_MEDIUM'
,
switch_time => 10,
switch_for_call =>
TRUE
,
switch_estimate =>
FALSE
);
dbms_resource_manager.create_plan_directive(
plan =>
'APEX_ORACLE_COM_PLAN'
,
group_or_subplan =>
'APEX_MEDIUM'
,
comment =>
'APEX sessions are switched to this group after 10 seconds.'
,
mgmt_p1 => 8,
switch_group =>
'APEX_LOW'
,
switch_time => 120,
switch_for_call =>
TRUE
,
switch_estimate =>
FALSE
);
dbms_resource_manager.create_plan_directive(
plan=>
'APEX_ORACLE_COM_PLAN'
,
group_or_subplan =>
'APEX_LOW'
,
comment =>
'Any sessions in this group have been executing for more than 120 seconds'
,
mgmt_p1 => 2,
switch_group =>
'CANCEL_SQL'
,
switch_time => 1800,
switch_for_call =>
TRUE
,
switch_estimate =>
FALSE
);
dbms_resource_manager.create_plan_directive(
plan=>
'APEX_ORACLE_COM_PLAN'
,
group_or_subplan =>
'OTHER_GROUPS'
,
comment =>
'The mandatory group'
,
mgmt_p1 =>10);
dbms_resource_manager.create_plan_directive(
plan=>
'APEX_ORACLE_COM_PLAN'
,
group_or_subplan =>
'ORA$AUTOTASK_SUB_PLAN'
,
comment =>
'Sub plan for maintenance activity'
,
mgmt_p1 => 10 );
dbms_resource_manager.set_initial_consumer_group(
user
=>
'APEX_PUBLIC_USER'
,
consumer_group =>
'APEX_HIGH'
);
dbms_resource_manager.submit_pending_area();
end
;
/
begin
dbms_scheduler.set_attribute(
name
=>
'MONDAY_WINDOW'
,
attribute =>
'RESOURCE_PLAN'
, value =>
'APEX_ORACLE_COM_PLAN'
);
dbms_scheduler.set_attribute(
name
=>
'TUESDAY_WINDOW'
,
attribute =>
'RESOURCE_PLAN'
, value =>
'APEX_ORACLE_COM_PLAN'
);
dbms_scheduler.set_attribute(
name
=>
'WEDNESDAY_WINDOW'
,
attribute =>
'RESOURCE_PLAN'
, value =>
'APEX_ORACLE_COM_PLAN'
);
dbms_scheduler.set_attribute(
name
=>
'THURSDAY_WINDOW'
,
attribute =>
'RESOURCE_PLAN'
, value =>
'APEX_ORACLE_COM_PLAN'
);
dbms_scheduler.set_attribute(
name
=>
'FRIDAY_WINDOW'
,
attribute =>
'RESOURCE_PLAN'
, value =>
'APEX_ORACLE_COM_PLAN'
);
dbms_scheduler.set_attribute(
name
=>
'SATURDAY_WINDOW'
,
attribute =>
'RESOURCE_PLAN'
, value =>
'APEX_ORACLE_COM_PLAN'
);
dbms_scheduler.set_attribute(
name
=>
'SUNDAY_WINDOW'
,
attribute =>
'RESOURCE_PLAN'
, value =>
'APEX_ORACLE_COM_PLAN'
);
end
;
/
alter
system
set
resource_manager_plan =
'APEX_ORACLE_COM_PLAN'
scope=both;