Simple Job Management
Now that you understand basically how to create a job, let’s see how to manage the job we just created. Unless otherwise stated, all tasks are performed by various programs in the DBMS_SCHEDULER package.
Enabling and disabling jobs
You can temporarily disable or enable a job using the DISABLE and ENABLE procedures, respectively. For example, to disable the job RMAN_INC, specify:
BEGIN
DBMS_SCHEDULER.disable (NAME => 'RMAN_INC');
END;If this job is currently running, the above command will return an error. You can include the FORCE parameter to override the default behavior:
BEGIN
DBMS_SCHEDULER.disable (NAME => 'RMAN_INC', FORCE=> TRUE);
END;Specifying FORCE will disable the job, but will allow the currently running process to complete.
You can enable a currently disabled job by calling the procedure ENABLE as follows.
BEGIN
DBMS_SCHEDULER.enable (NAME => 'RMAN_INC');
END;Tip
When you create a job and do not set the enabled parameter, the job is created but is disabled. You must explicitly enable it.
Stopping running jobs
When a job is running and you want to stop it, you can run the STOP_JOB procedure as follows.
BEGIN
DBMS_SCHEDULER.stop_job (JOB_NAME => 'RMAN_INC');
END;STOP_JOB will attempt to gracefully stop a job. There are times, unfortunately, when a graceful shutdown is not possible, in which case the above statement returns an error. You can force a job to shut down by using the FORCE parameter. For example, to stop the job APPLY_INTEREST (which executes ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access