最近在一个oracle11g数据库里面新建了一个job,job不会在设定的时间运行。但是手动运行是可以的。后来网上找到原因,是因为
job_queue_processes的参数设置问题:
1. job_queue_processes取值范围为0到1000
2. 当设定该值为0的时候则任意方式创建的job都不会运行。
3. 当设定该值大于1时,且并行执行job时,至少一个为协调进程。其总数不会超出job_queue_processes的值。
在命令行执行 show parameter job_queue_process;命令查看 job_queue_processes参数:
SQL> show parameter job_queue_process;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
job_queue_processes integer 0
参数值为0,表示不会运行job任务。
要想运行job任务,需要设置 job_queue_processes 的参数值大于0,设置命令:ALTER SYSTEM SET job_queue_processes = 10; 这个10可以根据需要进行更改为1到1000之间的数字。
SQL> ALTER SYSTEM SET job_queue_processes = 10;
System altered
-- 再次查看 job_queue_process参数值
SQL> show parameter job_queue_process;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
job_queue_processes integer 10
1. job_queue_processes取值范围为0到1000
2. 当设定该值为0的时候则任意方式创建的job都不会运行。
3. 当设定该值大于1时,且并行执行job时,至少一个为协调进程。其总数不会超出job_queue_processes的值。
在命令行执行 show parameter job_queue_process;命令查看 job_queue_processes参数:
SQL> show parameter job_queue_process;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
job_queue_processes integer 0
参数值为0,表示不会运行job任务。
要想运行job任务,需要设置 job_queue_processes 的参数值大于0,设置命令:ALTER SYSTEM SET job_queue_processes = 10; 这个10可以根据需要进行更改为1到1000之间的数字。
SQL> ALTER SYSTEM SET job_queue_processes = 10;
System altered
-- 再次查看 job_queue_process参数值
SQL> show parameter job_queue_process;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
job_queue_processes integer 10
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29609890/viewspace-2154865/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29609890/viewspace-2154865/