关于EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS()的问题

http://www.itpub.net/showthread.php?threadid=684486

select * from v$version
----------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - 64bi
PL/SQL Release 10.2.0.2.0 - Production
CORE 10.2.0.2.0 Production
TNS for Linux: Version 10.2.0.2.0 - Production
NLSRTL Version 10.2.0.2.0 - Production

前几天用户反映系统有点慢,但是不是很明显,我们使用两台机器带rac,我这几天一直再查,我发现引起问题的是每分钟执行的这个东西。EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS()

从toad看如图,从图中看,buffer gets很高,call rates也很高,我ssh进入linux,使用top看,发现大约一定的时间(1分钟),有一个oracle进程cpu使用率会上升到99%。

执行 ps -ef | grep pid 检查发现,进程是ora_j000_xxx1, 确定是这个job引起的。

我看一些相关文档,这个应该是与ADDM/AWR有关,我停止了这个job。
我发现另外一个奇怪的问题,如果我在一个实例上停止这个job,在另外一个实例看还是正常的。

查询metalink,发现相似的文档: doc id:308291.1。

Symptoms
One of the databases has an issue with dbms job.
EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS
Earlier you have been runnung sppurge.sql and removed all of statspack snapshots (for the
prior month) as the tools tablespace was almost full.
After that the
EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS process started eating up the
CPU on of the monitored DB 10g.
Cause
Statspack caused an issue with EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS
process
EMD_MAINTENANCE.EXECUTE_EM_DBMS_JOB_PROCS process on the remote 10g DB
should not be running because grid monitors the 10g DB, not the db console

建立解决方法,我采用的是:

以sysman用户登陆,执行exec emd_maintenance.remove_em_dbms_jobs;问题解决!!!


上一篇:冬季实战营第三期:MySQL数据库进阶实战


下一篇:冬季实战营第一期:从零到一上手玩转云服务器学习报告