題記:今天在監控系統上收到一套數據庫的JOB異常報警,這里記錄一下解決過程,分享出來! alert日志: Tue Dec 13 04:00:03 2011
題記:今天在監控系統上收到一套數據庫的JOB異常報警,這里記錄一下解決過程,,分享出來!
alert日志:
Tue Dec 13 04:00:03 2011
Errors in file /opt/Oracle/diag/rdbms/ndmcdb/NDMCDB/trace/NDMCDB_j000_11169.trc:
ORA-12012: error on auto execute of job 30
ORA-29283: invalid file operation
ORA-06512: at "SYS.UTL_FILE", line 41
ORA-06512: at "SYS.UTL_FILE", line 512
ORA-29283: invalid file operation
ORA-06512: at "NDMC.PROC_TODO_TASK", line 74
ORA-06512: at line 1
于是到數據庫中查詢:
Job Schema User Last Date Next Date Total Time B Interval Failures What
---------- ----------------- -------------------- -------------------- ---------- - ------------------------------ ---------- -------------------------
30 NDMC 01-Jan-4000 00:00:00 0 Y TRUNC(sysdate + 1) + 4/24 16 PROC_TODO_TASK;
現在這個Job已經不可用了。
根據日志中的提示,用PL/SQL Developer找到該存儲過程:
定位到74行:
這里是要打開一個目錄,那么這個PATH是在哪里定義的呢?
于是查看數據庫:
SQL> col DIRECTORY_PATH for a50
SQL> col OWNER for a20
SQL> select * from dba_directories;
OWNER DIRECTORY_NAME DIRECTORY_PATH
-------------------- ------------------------------ --------------------------------------------------
SYS NDMIGEXPDIR2 /home/oracle/ndmig_expdpdata
SYS NDMIGEXPDIR /home/oracle/archive/ndmig/expdpdata
SYS BACK_MSG_LOGS_PATH /home/oracle/msgBackup/work
SYS UNSUB_DATA_PATH /home/oracle/backup/unsub_data
SYS SHARELOG /home/oracle/share/
SYS DISKPKGFILECATALOG /home/oracle/backup/pkg_incon_data/diskpkgfile
SYS LOGCATALOG /home/oracle/backup/pkg_incon_data
SYS DATA_PUMP_DIR /opt/oracle/product/11g/db/rdbms/log/
SYS ORACLE_OCM_CONFIG_DIR /opt/oracle/product/11g/db/ccr/state
那么確認系統中是否存在這個目錄或是這個目錄權限是否正確:
oracle@NDMCDB05:~> cd /home/oracle/backup/unsub_data
-bash: cd: /home/oracle/backup/unsub_data: No such file or directory
發現這個目錄不存在,于是手工創建:
oracle@NDMCDB05:~> mkdir -p /home/oracle/backup/unsub_data
接著需要將job的屬性修改正確:
問題解決!
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com