Oracle не работает планировщик заданий

Проблема: На сервере нужно запустить задание(job), которое будет выполняться через определенный промежуток времени. После создания задания (job’а) в Oracle оно не стартует в указанное время, при этом если выполнить вручную — все прекрасно работает.
Инструментарий: Oracle 11

Решение: Для ручного выполнения задания (job’а) в Oracle я использовал стандартный команду:

BEGIN
  dbms_scheduler.run_job (job_name => '<Название>');
END;
/

И все работает как часы. Но стоит это же задание запланировать чтобы оно выполнялось в определенное время — ничего не выполняется.
Для просмотра параметров на сервере воспользуемся запросом:

SELECT * FROM v$parameter

Но нас интересует не вся информация, а параметр JOB_QUEUE_PROCESSES. Для выбора информации отдельно по этому параметру воспользуемся запросом:

SELECT * FROM v$parameter WHERE UPPER(name) = 'JOB_QUEUE_PROCESSES';

В описание написано что JOB_QUEUE_PROCESSES — максимальное число процессов, разрешенных для выполнения заданий в фоне.
В нашем случае этот параметр равняется нулю (в результате выборки столбец Value = 0).

Изменим значение данного параметра с помощью операции:

ALTER system SET job_queue_processes = 10;

 
PS: Все заработало.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *