客户的Oracle 11.2.0.3 RAC环境自动运行的JOB报错ORA-29280。
详细错误信息为:
Sat Sep 15 05:59:59 2012
VKRM started with pid=54, OS id=32622
Sat Sep 15 06:00:09 2012
Errors in file /opt/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_j001_32634.trc:
ORA-12012: error on auto execute of job “ORACLE_OCM”.”MGMT_CONFIG_JOB_2_1″
ORA-29280: invalid directory path
ORA-06512: at “ORACLE_OCM.MGMT_DB_LL_METRICS”, line 2436
ORA-06512: at line 1
这个问题在升级之前的11.2.0.2版本上没有出现过,,显然这是升级到11.2.0.3带来的bug。而报错的JOB所属用户ORACLE_OCM是Oracle配置管理的专属用户。根据文档”ORA-12012: error on auto execute of job ORACLE_OCM.MGMT_CONFIG_JOB_2_1″ And “ORA-29280: invalid directory path” In Database AlertLog [ID 1453959.1],导致问题的原因是数据库升级到11.2.0.3后,Oracle会启用自动OCM collection,在这个过程中Oracle尝试使用目录ORACLE_OCM_CONFIG_DIR2,但这个目录在创建过程中并未建立。
解决该问题并不复杂,对于不需要使用配置管理器的用户而言,可以简单的DISABLE掉这个JOB,或者直接将ORACLE_OCM用户删除:
exec dbms_scheduler.disable(‘ORACLE_OCM.MGMT_CONFIG_JOB’)
exec dbms_scheduler.disable(‘ORACLE_OCM.MGMT_STATS_CONFIG_JOB’)
如果需要使用配置管理器,可以通过ORACLE_HOME/ccr/admin/scripts/installCCRSQL脚本来重新设置配置管理器。如果上面的脚本缺失,可以通过先执行ORACLE_HOME/ccr/bin/setupCCR脚本的方式来进行配置。