正确停止JOB步骤
orcale数据库
--查找用户通过dbms_SCHEDULER方式创建的任务
select * from dba_scheduler_jobs t where t.owner ='用户名';
--正在运行的dbms_SCHEDULER方式创建的任务
SELECT * FROM dba_SCHEDULER_RUNNING_JOBS;
select * from v$scheduler_running_jobs;
--停止dbms_SCHEDULER方式创建的任务
--PLSQL中使用命令窗口执行
EXEC DBMS_SCHEDULER.stop_job('JOB名称');
commit;
--如果上述方式仍无法停止JOB,则使用下面的强制停止
EXEC DBMS_SCHEDULER.stop_job('JOB名称',true);
commit;
--查找用户通过dbms_job方式创建的任务
select t.what,t.* from dba_jobs t where t.log_user ='用户名'
select t.what,t.* from all_jobs t;
select t.what,t.* from user_jobs t;
--正在运行的dbms_job方式创建的任务,获取到jobid
select * from dba_jobs_running;
--停止dbms_job方式创建的任务
--PLSQL中使用命令窗口执行
--第一步 job状态改为停止
EXEC dbms_job.broken(jobid,true);
commit;
--第二步 kill掉对应session
select t.action,t.* from v$session t where t.action like '%JOB名称%';
alter system kill session 'sid, serial#'