|
Выключить запуск пропущенного JOB
|
|||
---|---|---|---|
#18+
Здравствуйте! Oracle 11.2 Есть JOB, который запускается каждый день в 22 часа. Если JOB не выполнился вовремя по тем или иным причинам, то его следующий запуск будет при старте БД. Есть ли какой-то параметр, который запретит выполнять JOB при старте БД? Нужно сделать так, что JOB всегда запускался по расписанию в 22 часа. Спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2021, 12:26 |
|
Выключить запуск пропущенного JOB
|
|||
---|---|---|---|
#18+
Видимо, при создании тестовой БД? Можно устанавливать параметр job_queue_processes в 0 перед стартом БД, затем менять NEXT_TIME у задания, ну и далее вернуть (или сбросить) job_queue_processes ... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2021, 12:31 |
|
Выключить запуск пропущенного JOB
|
|||
---|---|---|---|
#18+
Там немного сложнее. Каждую ночь по DBLink забираются все данные из базы Firebird. С полным удалением/созданием матвьюх. В рабочее время идут запросы к этим данным (через процедуры в пакетах). Запуск JOB в рабочее время приводит к раскомпиливанию объектов и блокировках. Поэтому хотелось бы делать это в строго нерабочее время по расписанию. Конечно как вариант можно добавить обработку внутри самой вызываемой процедуры типа такой (см ниже), но решил спросить у профессионалов, вдруг есть какой-нибудь атрибут для самого JOB, т.к. job_queue_processes=0 выключит всю очередь, а хотелось бы регулировать запуск конкретного задания. Код: plsql 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2021, 13:32 |
|
Выключить запуск пропущенного JOB
|
|||
---|---|---|---|
#18+
Ну, я как-то публиковал здесь (не мой) способ привязки заданий к поднятию определенного service Но это надо планировать заранее ... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2021, 14:13 |
|
Выключить запуск пропущенного JOB
|
|||
---|---|---|---|
#18+
HorshevНужно сделать так, что JOB всегда запускался по расписанию в 22 часа. С DBMS_SCHEDULER этого можно добиться через schedule_limit. Если job пропустил свой запуск + schedule_limit, то next_run_date обновляется с соответствующей записью в dba_scheduler_job_log: Код: plsql 1.
Запуска при старте БД при этом не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.10.2021, 17:29 |
|
|
start [/forum/topic.php?fid=52&msg=40106596&tid=1879795]: |
0ms |
get settings: |
18ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
47ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
98ms |
get tp. blocked users: |
0ms |
others: | 389ms |
total: | 563ms |
0 / 0 |