国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

Oracle案例詳細分析:Job任務(wù)停止執(zhí)行

瀏覽:151日期:2023-11-25 08:55:51
摘要: 本文通過一次Oracle Job任務(wù)異常案例診斷,分析其原因及解決過程,從內(nèi)部揭示Oracle Job任務(wù)調(diào)度及內(nèi)部計時機制。 問題及環(huán)境 接到研發(fā)人員報告,數(shù)據(jù)庫定時任務(wù)未正常執(zhí)行,導(dǎo)致某些操作失敗。 開始介入處理該事故 系統(tǒng)環(huán)境: SunOS DB 5.8 Generic_108528-21 sun4u sparc SUNW,Ultra-4 Oracle9i Enterprise Edition Release 9.2.0.3.0 - ProdUCtion解決過程 首先介入檢查數(shù)據(jù)庫任務(wù): $ sqlplus '/ as sysdba' SQL*Plus: Release 9.2.0.3.0 - Production on Wed Nov 17 20:23:53 2004 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. Connected to: Oracle9i Enterprise Edition Release 9.2.0.3.0 - Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.3.0 - Production SQL> select job,last_date,last_sec,next_date,next_sec,broken,failures from dba_jobs; JOB LAST_DATE LAST_SEC NEXT_DATE NEXT_SEC B FAILURES INTERVAL ---------- --------- ---------------- --------- ---------------- - ---------- ---------------------------- 31 16-NOV-04 01:00:02 17-NOV-04 01:00:00 N 0 trunc(sysdate+1)+1/24 27 16-NOV-04 00:00:04 17-NOV-04 00:00:00 N 0 TRUNC(SYSDATE) + 1 35 16-NOV-04 01:00:02 17-NOV-04 01:00:00 N 0 trunc(sysdate+1)+1/24 29 16-NOV-04 00:00:04 17-NOV-04 00:00:00 N 0 TRUNC(SYSDATE) + 1 30 01-NOV-04 06:00:01 01-DEC-04 06:00:00 N 0 trunc(add_months(sysdate,1),’MM’)+6/24 65 16-NOV-04 04:00:03 17-NOV-04 04:00:00 N 0 trunc(sysdate+1)+4/24 46 16-NOV-04 02:14:27 17-NOV-04 02:14:27 N 0 sysdate+1 66 16-NOV-04 03:00:02 17-NOV-04 18:14:49 N 0 trunc(sysdate+1)+3/24 8 rows selected發(fā)現(xiàn)JOB任務(wù)是都沒有正常執(zhí)行,最早一個應(yīng)該在17-NOV-04 01:00:00執(zhí)行,但是沒有執(zhí)行。 建立測試JOB create or replace PROCEDURE pining IS BEGIN NULL; END; / variable jobno number; variable instno number; begin select instance_number into :instno from v$instance; dbms_job.submit(:jobno, ’pining;’, trunc(sysdate+1/288,’MI’), ’trunc(SYSDATE+1/288,’’MI’’)’, TRUE, :instno); end; /發(fā)現(xiàn)同樣的,不執(zhí)行,但是通過dbms_job.run()執(zhí)行沒有任何問題。 進行恢復(fù)嘗試 懷疑是CJQ0進程失效,首先設(shè)置JOB_QUEUE_PROCESSES為0,Oracle會殺掉CJQ0及相應(yīng)job進程: SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 0;等2~3分鐘,重新設(shè)置: SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES = 5;此時PMON會重起CJQ0進程: Thu Nov 18 11:59:50 2004 ALTER SYSTEM SET job_queue_processes=0 SCOPE=MEMORY; Thu Nov 18 12:01:30 2004 ALTER SYSTEM SET job_queue_processes=10 SCOPE=MEMORY; Thu Nov 18 12:01:30 2004 Restarting dead background process CJQ0 CJQ0 started with pid=8 但是Job仍然不執(zhí)行,而且在再次修改的時候,CJQ0直接死掉了。 Thu Nov 18 13:52:05 2004 ALTER SYSTEM SET job_queue_processes=0 SCOPE=MEMORY; Thu Nov 18 14:09:30 2004 ALTER SYSTEM SET job_queue_processes=10 SCOPE=MEMORY; Thu Nov 18 14:10:27 2004 ALTER SYSTEM SET job_queue_processes=0 SCOPE=MEMORY; Thu Nov 18 14:10:42 2004 ALTER SYSTEM SET job_queue_processes=10 SCOPE=MEMORY; Thu Nov 18 14:31:07 2004 ALTER SYSTEM SET job_queue_processes=0 SCOPE=MEMORY; Thu Nov 18 14:40:14 2004 ALTER SYSTEM SET job_queue_processes=10 SCOPE=MEMORY; Thu Nov 18 14:40:28 2004 ALTER SYSTEM SET job_queue_processes=0 SCOPE=MEMORY; Thu Nov 18 14:40:33 2004 ALTER SYSTEM SET job_queue_processes=1 SCOPE=MEMORY; Thu Nov 18 14:40:40 2004 ALTER SYSTEM SET job_queue_processes=10 SCOPE=MEMORY; Thu Nov 18 15:00:42 2004 ALTER SYSTEM SET job_queue_processes=0 SCOPE=MEMORY; Thu Nov 18 15:01:36 2004 ALTER SYSTEM SET job_queue_processes=15 SCOPE=MEMORY;嘗試重起數(shù)據(jù)庫,這個必須在晚上進行: PMON started with pid=2 DBW0 started with pid=3 LGWR started with pid=4 CKPT started with pid=5 SMON started with pid=6 RECO started with pid=7 CJQ0 started with pid=8 QMN0 started with pid=9 ....CJQ0正常啟動,但是Job仍然不執(zhí)行。發(fā)現(xiàn)Oralce有這樣一個Bug: 1. Clear description of the problem encountered: slgcsf() / slgcs() on Solaris will stop incrementing after 497 days 2 hrs 28 mins (approx) machine uptime. 2. Pertinent configuration information No special configuration other than long machine uptime. . 3. Indication of the frequency and predictability of the problem 100% but only after 497 days. 4. Sequence of events leading to the problem If the gethrtime() OS call returns a value > 42949672950000000 nanoseconds then slgcs() stays at 0xffffffff. This can cause some problems in parts of the code which rely on slgcs() to keep moving. eg: In kkjssrh() does 'now = slgcs(&se)' and compares that to a previous timestamp. After 497 days uptime slgcs() keeps returning 0xffffffff so 'now - kkjlsrt' will always return 0. . 5. Technical impact on the customer. Include persistent after effects. In this case DBMS JOBS stopped running after 497 days uptime. Other symptoms could occur in various places in the code.原來是計時器溢出了,重新檢查主機: bash-2.03$ uptime 10:00pm up 500 day(s), 14:57, 1 user, load average: 1.31, 1.09, 1.08 bash-2.03$ date Fri Nov 19 22:00:14 CST 2004安排重起主機系統(tǒng),重起以后問題解決,狀態(tài)如下: $ sqlplus '/ as sysdba' SQL*Plus: Release 9.2.0.3.0 - Production on Fri Nov 26 09:21:21 2004 Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved. Connected to: Oracle9i Enterprise Edition Release 9.2.0.3.0 - Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.3.0 - Production SQL> select job,last_date,last_sec,next_date,next_sec from user_jobs; JOB LAST_DATE LAST_SEC NEXT_DATE NEXT_SEC ---------- --------- ---------------- --------- ---------------- 70 26-NOV-04 09:21:04 26-NOV-04 09:26:00 SQL> / JOB LAST_DATE LAST_SEC NEXT_DATE NEXT_SEC ---------- --------- ---------------- --------- ---------------- 70 26-NOV-04 09:26:01 26-NOV-04 09:31:00 SQL> SQL> select * from v$timer; HSECS ---------- 3388153 SQL> select * from v$timer; HSECS ---------- 3388319 SQL> FAQ
標(biāo)簽: Oracle 數(shù)據(jù)庫
主站蜘蛛池模板: xx欧美老妇| 怡红院免费的全部视频 | 一级黄片一级毛片 | 久久久精品成人免费看 | 欧美日本在线三级视频 | 成人自拍在线 | 久久精品国产线看观看亚洲 | 国内精品久久久久久久aa护士 | 国产精品高清视亚洲精品 | 国产日本欧美高清免费区 | 成人伊人青草久久综合网 | 永久网站色视频在线观看免费 | 91久久精品国产一区二区 | 一级做a级爰片性色毛片视频 | 韩国美女一级片 | 亚洲欧美成人影院 | 国产一级一国产一级毛片 | 国产精品成人久久久久 | 国产一区二区三区在线免费观看 | 国产丝袜不卡一区二区 | 手机av在线播放 | 国产欧美日韩一区二区三区 | 在线观看亚洲免费视频 | 欧美黄色免费网站 | 在线国产区| 久久久久久久免费 | 国产成人女人视频在线观看 | 中文字幕视频免费在线观看 | 欧美成人三级大全 | 91精品国产薄丝高跟在线看 | 亚洲精品15p | 免费毛片视频网站 | 黄色日韩网站 | 国产视频a区 | 一级a性色生活片久久毛片 一级a做爰片欧欧美毛片4 | 国产大尺度福利视频在线观看 | 国产一级毛片夜一级毛片 | 美女一级毛片毛片在线播放 | 91精品久久久久久久久久 | 国产精品久久人人做人人爽 | 成年人黄视频在线观看 |