日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle 作业 断开原因,解惑 | Oracle JOB 异常中断原因分析

發布時間:2025/4/16 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle 作业 断开原因,解惑 | Oracle JOB 异常中断原因分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

注釋

今天研發同事找我確認 PKG_WMS.proc_TaskMain 存儲的 job 是否還在運行,竟發現 dba_jobs.NEXT_DATE=4000/1/1. 如下看看究竟原因吧~

JOB 信息:

參數:

BROKEN : 中斷標記 ,'N 啟動、Y 中斷' --> DBMS_JOBS.BROKEN(job_id,TRUE/FALSE); 停止 / 啟動 job, 隨后需要 COMMIT; 否則設置失效

FAILURES :錯誤次數

last_date:job 上次成功執行的時間

next_date:job 下次執行的時間 (受 last_date 和 interval 的影響)

total_time:job 運行的總時間 (每次運行的時間累加)

this_date:job 正在執行的時間 (如果查詢時 job 正在執行則有值)

分析:

*** 若定時任務 what 存儲過程調用出現異常 (例如:空間不足、存儲過程本身編寫問題..)

*** job 會自動嘗試 16 次連續失敗后再將 broken 狀態改為 Y,并將 next-date 改為 “4000-1-1”,只能手動 exec dbms_job.run(:id); 來啟動 job;

譬如:存儲過程 p1,隨便注釋 begin/end 行, 體現語法問題,job 會正常按照 p1 存儲過程的 job 運行 16 次,再 broken 中斷 job,

若到 10 次,存儲過程更改為正確狀態,錯誤次數將改為 0,job 改為正常;

判斷問題方法:

1、手動 call 存儲來判斷是什么問題,若 call 存儲時未報錯,說明之前該存儲有問題過,job 嘗試運行已超過 16 次,需要手動 exec dbms_job.run(:id); 啟動 job;

2、查看 alert 日志,oracle job 異常會記錄到告警日志;

嘗試啟動...

SQL>begin

2 dbms_job.run(1543);

3 end;

4 /

ORA-12011: 無法執行 1 作業

ORA-06512: 在 "SYS.DBMS_IJOB", line 648

ORA-06512: 在 "SYS.DBMS_JOB", line 284

ORA-06512: 在 line 2

SQL>

報錯,再看下 alert 內容 (方案 2):

1、

ORA-12012: 自動執行作業 1543出錯

ORA-12899: 列 "FWS". "RECODE_ERROR_MSG". "ERROR_MSG"的值太大 (實際值 : 704, 最大值: 500)

ORA-06512: 在 "FWS.PROC_WRITEERRMSG", line 22

ORA-06512: 在 "FWS.PKG_WMS", line 132

ORA-01688: 表 FWS.RECODE_ERROR_MSG 分區 SYS_P6181 無法通過 8192(在表空間 TBS_WMS_CITY_JK_DATA 中) 擴展

ORA-06512: 在 "FWS.PROC_WRITEERRMSG", line 22

ORA-06512: 在 "FWS.PKG_WMS", line 514

ORA-01688: 表 FWS.RECODE_ERROR_MSG 分區 SYS_P6181 無法通過 8192(在表空間 TBS_WMS_CITY_JK_DATA 中) 擴展

ORA-06512: 在 "FWS.PROC_WRITEERRMSG", line 22

ORA-06512: 在 "FWS.PKG_WMS", line 502

ORA-01400: 無法將 NULL 插入 ( "FWS". "BILL_RECEIPT_CITY". "CREATOR")

ORA-06512: 在 line 1

ORA-1688: unable to extend table FWS.RECODE_ERROR_MSG partition SYS_P6181 by 128in tablespace TBS_WMS_CITY_JK_DATA

ORA-1688: unable to extend table FWS.RECODE_ERROR_MSG partition SYS_P6181 by 8192in tablespace TBS_WMS_CITY_JK_DATA

ORA-1688: unable to extend table FWS.RECODE_ERROR_MSG partition SYS_P6181 by 128in tablespace TBS_WMS_CITY_JK_DATA

ORA-1688: unable to extend table FWS.RECODE_ERROR_MSG partition SYS_P6181 by 8192in tablespace TBS_WMS_CITY_JK_DATA

2、

ORA-12012: 自動執行作業 26出錯

ORA-06550: 第 1行, 第 96列:

PLS-00905: 對象 LOTTERY.P_LOCK_CHECK_HD 無效

ORA-06550: 第 1行, 第 96列:

PL/ SQL: Statement ignored

Mon Jul 1314: 39: 552015

Errors in file /u01/app/oracle/diag/rdbms/bjcc/ccem01/trace/ccem01_j001_36869. trc:

按照 alert log 解決即可..

***1、空間不足是因為 RECODE_ERROR_MSG 表每天 1 億數據量增加導致..truncate table RECODE_ERROR_MSG 即可; 表暴漲原因 Oracle 歸檔暴漲分析

***2、自己測試將存儲置失效的報錯信息;

總結

以上是生活随笔為你收集整理的oracle 作业 断开原因,解惑 | Oracle JOB 异常中断原因分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。