oracle停止当前运行的JOB或kill会话

在Oracle中,可以使用DBA_SCHEDULER_JOBS视图来查找当前正在运行的作业(job),并使用DBMS_SCHEDULER.STOP_JOB过程来停止它们

sql 复制代码
SELECT JOB_NAME, STATE FROM DBA_SCHEDULER_JOBS WHERE STATE = 'RUNNING';
SELECT *  FROM DBA_SCHEDULER_JOBS WHERE STATE = 'RUNNING' and owner='ATLAS';

上面的SQL查询会列出所有当前状态为RUNNING的作业,即正在运行的作业。

要停止这些作业,可以编写一个PL/SQL块来遍历这些作业并停止它们

sql 复制代码
DECLARE
  CURSOR running_jobs IS
    SELECT JOB_NAME
    FROM DBA_SCHEDULER_JOBS
    WHERE STATE = 'RUNNING' and owner='ATLAS';
 
  v_job_name VARCHAR2(200);
BEGIN
  OPEN running_jobs;
  LOOP
    FETCH running_jobs INTO v_job_name;
    EXIT WHEN running_jobs%NOTFOUND;
    DBMS_SCHEDULER.STOP_JOB(v_job_name);
  END LOOP;
  CLOSE running_jobs;
END;
/

或者kill会话

sql 复制代码
select 'alter system kill session '''||sid||','||serial#||''';' from gv$session where machine like'WIN-%' and  inst_id=1
union all
select 'alter system kill session '''||sid||','||serial#||''';'from gv$session where machine ='frdb1' and schemaname ='ATLAS'

vi kill_s.sql

@kill_s.sql
相关推荐
zpjing~.~1 小时前
Mongo 分页判断是否有下一页
数据库
2401_857600951 小时前
技术与教育的融合:构建现代成绩管理系统
数据库·oracle
秋恬意1 小时前
Mybatis能执行一对一、一对多的关联查询吗?都有哪些实现方式,以及它们之间的区别
java·数据库·mybatis
潇湘秦1 小时前
一文了解Oracle数据库如何连接(1)
数据库·oracle
雅冰石2 小时前
oracle怎样使用logmnr恢复误删除的数据
数据库·oracle
web前端神器2 小时前
mongodb给不同的库设置不同的密码进行连接
数据库·mongodb
从以前2 小时前
Berlandesk 注册系统算法实现与解析
数据库·oracle
Muko_0x7d22 小时前
Mongodb
数据库·mongodb
Ren_xixi2 小时前
redis和mysql的区别
数据库·redis·mysql
m0_748233882 小时前
SQL语句整理五-StarRocks
数据库·sql