physical standby的ocm error


--在dataguard之後,physical standby的ocm error:

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

--------------------
col owner format a10
col directory_name format a30
col directory_path format a50

sql> select * from dba_directories where directory_name like '%ocm_config%';

owner      directory_name                 directory_path
---------- ------------------------------ --------------------------------------------------
sys        oracle_ocm_config_dir          /data/oracle/product/11.2.0.3/db1/ccr/state

--而這個目錄是之前primary庫的目錄,所以這邊是否可以修改下?


"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]

In this Document

Applies to:

Oracle Configuration Manager - Version 10.3.3.0.0 and later
Information in this document applies to any platform.
Symptoms

Following error is reported every 24 hours in the alertLog file of 11.2.0.3 database:

Errors in file /opt/oracle/diag/rdbms/db/trace/db_j001_26027.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

Changes

Newly installed 11.2.0.3 database, or recently upgraded to 11.2.0.3 from an earlier release.

Cause

Newer database releases are automatically instrumented for OCM collections. But here, the OCM instrumentation job is trying to write to a "state" directory which doesn't yet exists.

To verify the OCM db directories, run as sysdba:
SQL>select * from dba_directories where DIRECTORY_NAME like '%OCM_CONFIG%';

MGMT_DB_LL_METRICS wants to write to ORACLE_OCM_CONFIG_DIR2, which is not created by the built-in instrumentation scripts.

Solution

Problem is fixed with OCM Collector version 10.3.7

A. But out-of-box the 11.2 database includes earlier OCM version, therefore one must re-configure database for OCM collections by running the "ORACLE_HOME/ccr/admin/scripts/installCCRSQL" script. If script is missing, first configure OCM by running "ORACLE_HOME/ccr/bin/setupCCR".
Pay attention when on RAC database, with a non-shared file system environment, must set the ORACLE_CONFIG_HOME environment variable to $ORACLE_HOME prior to running the installCCRSQL.sh script. Reference: Oracle Configuration Manager Installation and Administration Guide

or

B. when not using the OCM Collector, remove the OCM objects from database:
SQL> drop user ORACLE_OCM cascade;
OCM is a standalone, separate tool and removing won't affect the database functionality.

Or could simply disable the OCM jobs by running:

exec dbms_scheduler.disable('ORACLE_OCM.MGMT_CONFIG_JOB')
exec dbms_scheduler.disable('ORACLE_OCM.MGMT_STATS_CONFIG_JOB')

--
select * from dba_jobs;
select * from dba_scheduler_jobs;
--
References

@ BUG:12927935 - ORA-12012, ORACLE_OCM.MGMT_DB_LL_METRICS, ORA-29280
NOTE:859113.1 - How To Manually Remove ORACLE_OCM From Database
@ BUG:13402366 - ORA-12012: ERROR ON AUTO EXECUTE OF JOB "ORACLE_OCM"."MGMT_CONFIG_JOB_2_1"
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章