操作系统:AIX 6.1
数据库版本:11.2.0.2.0 未打任何补丁
凌晨接到老领导电话,立即爬起登录VPN,登录服务器看到两节点CPU 使用率96%

数据库大量等待事件:resmgr:cpu quantum
现场反馈应用无法使用,领导反馈让抓取消耗CPU 过高的SQL ,看到这个状态,我特意看下单个进程CPU 都不高,最高的单核不超过25%,我认为这个主要原因不是业务SQL导致,怀疑BUG方面

这个等待上次遇到过一次是因为磁盘IO堵塞导致,但目前看IO 量不大,所以直接MOS
Resource Manager and SQL Tuning Advisory DEFAULT_MAINTENANCE_PLAN (Doc ID
786346.1)
,处理方式禁用资源管理计划!

查看资源计划
select window_name, resource_plan from dba_scheduler_windows;

1、设置当前resource manager plan 为NULL;
alter system set resource_manager_plan='' scope=both;
2、11g,修改窗口计划为NULL;
execute dbms_scheduler.set_attribute('SATURDAY_WINDOW','RESOURCE_PLAN','');
execute dbms_scheduler.set_attribute('SUNDAY_WINDOW','RESOURCE_PLAN','');
execute dbms_scheduler.set_attribute('MONDAY_WINDOW','RESOURCE_PLAN','');
execute dbms_scheduler.set_attribute('TUESDAY_WINDOW','RESOURCE_PLAN','');
execute dbms_scheduler.set_attribute('WEDNESDAY_WINDOW','RESOURCE_PLAN','');
execute dbms_scheduler.set_attribute('THURSDAY_WINDOW','RESOURCE_PLAN','');
execute dbms_scheduler.set_attribute('FRIDAY_WINDOW','RESOURCE_PLAN','');
3、禁用 SQL tuning
BEGIN
DBMS_AUTO_TASK_ADMIN.DISABLE(
client_name => 'sql tuning advisor',
operation => NULL,
window_name => NULL);
END;
/
4、看盖老BLOG 如果以上设置后依然不生效,可以使用隐含参数禁用Oracle缺省启用的资源管理调度 ;
_resource_manager_always_on = false
以上执行完毕后,再次查看等待事件均正常,应用也恢复正常使用,睡觉去了。。

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