数据库job
① oracle中job的使用是怎样的
在Oracle数据库中,设置初始化参数以管理后台进程至关重要。例如,可以通过如下sql语句调整job_queue_processes参数:sql> alter system set job_queue_processes=n; 其中n应大于0,且最大值为1000。要查看后台进程的状态,可以执行如下查询:sql> select name,description from v$bgprocess;
Oracle提供了dbms_job包来管理作业。该包包含多个子过程,如Broken()、change()、interval()、isubmit()、next_date()、remove()、run()、submit()和user_Export()、what()等。这些过程用于执行各种任务,如更新作业状态、修改作业设置和运行作业。
Broken()过程用于更新作业状态,通常用于标记作业为未破。它接受三个参数:job、broken和next_date。PROCEDURE Broken (job IN binary_integer,BrokenIN boolean,next_date IN date :=SYSDATE)。job参数是作业号,唯一标识作业;broken参数指示作业是否应标记为破,TRUE表示破,FALSE表示未破;next_date参数指定下次运行时间,默认为当前时间。如果作业由于某些原因未能成功执行,Oracle将重试16次。若重试后仍未成功,作业将被标记为broken状态。重新启动broken状态的作业可通过两种方式实现:a、使用dbms_job.run()立即执行该作业;b、使用dbms_job.broken()将broken标记为false。
Change()过程用于更改指定作业的设置。它接受四个参数:job、what、next_date和interval。PROCEDURE Change (jobIN binary_integer,What IN varchar2,next_dateIN date,interval IN varchar2)。job参数是一个整数,唯一标识作业;what参数是指定由作业运行的PL/SQL代码块;next_date参数指示作业何时执行;interval参数指示作业重执行的频率。
② oracle数据库中怎么看job跑没跑完
dba_jobs_running,这张表内没有一般就是跑完了。可以查一下dba_jobs看一下最后运行时间确认。
当然要是schele-job那么在这张表内是查不到的,要去dba_scheler_jobs里面查。还有一个 user_scheler_job_run_details这里可以查询scheler_job的运行情况。