Home  >  Article  >  Database  >  【翻译自mos文章】DBA_JOBS和DBA_JOBS_RUNNING不同的结果的解释

【翻译自mos文章】DBA_JOBS和DBA_JOBS_RUNNING不同的结果的解释

WBOY
WBOYOriginal
2016-06-07 15:58:341521browse

DBA_JOBS 和 DBA_JOBS_RUNNING 不同的结果 参考原文: Different Results from DBA_JOBS and DBA_JOBS_RUNNING (Doc ID 109725.1) 目的: 解释DBA_JOBS和 DBA_JOBS_RUNNING的关系。 范围: dba 你发现DBA_JOBS_RUNNING 中能查询一条记录,但是从DBA_JOBS却查

DBA_JOBS 和 DBA_JOBS_RUNNING 不同的结果

参考原文:
Different Results from DBA_JOBS and DBA_JOBS_RUNNING (Doc ID 109725.1)

目的:
解释DBA_JOBS和 DBA_JOBS_RUNNING的关系。

范围:
dba

你发现DBA_JOBS_RUNNING 中能查询一条记录,但是从DBA_JOBS却查不到记录。
你担心数据字典(dd)损坏。

解释:

dba_jobs的定义:
select JOB, lowner LOG_USER, powner PRIV_USER, cowner SCHEMA_USER,
LAST_DATE, substr(to_char(last_date,'HH24:MI:SS'),1,8) LAST_SEC,
THIS_DATE, substr(to_char(this_date,'HH24:MI:SS'),1,8) THIS_SEC,
NEXT_DATE, substr(to_char(next_date,'HH24:MI:SS'),1,8) NEXT_SEC,
(total+(sysdate-nvl(this_date,sysdate)))*86400 TOTAL_TIME,
decode(mod(FLAG,2),1,'Y',0,'N','?') BROKEN,
INTERVAL# interval, FAILURES, WHAT,
nlsenv NLS_ENV, env MISC_ENV, j.field1 INSTANCE
from sys.job$ j

DBA_JOBS_RUNNING的定义:
select v.SID, v.id2 JOB, j.FAILURES,
LAST_DATE, substr(to_char(last_date,'HH24:MI:SS'),1,8) LAST_SEC,
THIS_DATE, substr(to_char(this_date,'HH24:MI:SS'),1,8) THIS_SEC,
j.field1 INSTANCE
from sys.job$ j, v$lock v
where v.type = 'JQ' and j.job (+)= v.id2

在DBA_JOBS_RUNNING的where条件中,有一个有趣的外连接。这个外连接的意思是
DBA_JOBS_RUNNING 显示那些没有在sys.job$中的,但是能在v$lock看到的(job 正在运行的)

比如说,这个情况 可能是这个job 刚刚被remove掉,并且该job还没有运行完成。
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn