首页/新闻资讯/正文详情

oracle、sqlserver、postgresql、mysql 批量kill会话脚本汇总

发布时间:2026/11/16 3:30:44 来源:云帆数科 栏目:资讯中心
oracle、sqlserver、postgresql、mysql 批量kill会话脚本汇总
一、 Oracle数据库内操作--单实例 select alter system kill session ||s.sid||,||s.SERIAL#|| immediate; from v$session s where s.statusINACTIVE --状态为非活跃 and s.USERNAME ZZZ --用户为ZZZZ and s.typeBACKGROUND --不为oracle后台进程 and program not like %(J0% --不为oracle的JOB进程 and s.LOGON_TIME to_date(2020-09-12 08:00:00,YYYY-MM-DD HH24:MI:SS) -- 会话登录时间操作系统中操作要求登录到数据库主机# kill掉所有localno的非本地连接进程 ps -ef|grep -v grep|grep LOCALNO|awk {print $2}|xargs kill -9二、 SQL Serverkill 单个会话并查看回滚进度kill spid kill spid with statusonlykill 所有LCK相关被阻塞会话select kill cast(spid as varchar) FROM sys.sysprocesses sp where spid50 and blocked !0 and spid ! blocked and lastwaittype like LCK% and loginameXXX;kill 所有LCK相关阻塞源会话select kill cast(blocked as varchar) FROM sys.sysprocesses sp where spid50 and spid ! blocked and lastwaittype like LCK% and loginameXXX;根据sql文本kill会话适用于大量慢查询SELECT distinct concat(kill ,session_id), SUBSTRING(qt.text, (er.statement_start_offset / 2) 1, ((CASE er.statement_end_offset WHEN -1 THEN DATALENGTH(qt.text) ELSE er.statement_end_offset END - er.statement_start_offset) / 2) 1) AS stmt FROM sys.dm_exec_requests er CROSS APPLY sys.dm_exec_sql_text(er.sql_handle) qt WHERE er.session_Id 50 and SUBSTRING(qt.text, (er.statement_start_offset / 2) 1, ((CASE er.statement_end_offset WHEN -1 THEN DATALENGTH(qt.text) ELSE er.statement_end_offset END - er.statement_start_offset) / 2) 1) like %xxxx%;kill阻塞中较低权重sql可参考Detect and Automatically Kill Low Priority Blocking Sessions in SQL Serverkill 指定DB所有会话DECLARE DBNAME NVARCHAR(100) DECLARE SQL NVARCHAR(MAX) DECLARE SPID NVARCHAR(100) SET DBNAMEdbname -- 要kill掉连接的数据库名 DECLARE CurDBName CURSOR FOR SELECT [spid] FROM sys.sysprocesses WHERE [spid]50 AND DBID DB_ID(DBNAME) OPEN CurDBName FETCH NEXT FROM CurDBName INTO SPID WHILE FETCH_STATUS 0 BEGIN --kill process SET SQL Nkill SPID EXEC (SQL) FETCH NEXT FROM CurDBName INTO SPID END CLOSE CurDBName DEALLOCATE CurDBName三、 postgresql不要在操作系统层直接kill 进程即使是用户进程被kill后也很可能导致pg直接挂掉加重故障。以下均为数据库内操作方案一较保守、风险低但是针对高并发的系统效果不好。因为kill的速度慢跟不上再次上来的会话。SELECT select pg_terminate_backend(||pid||); FROM pg_stat_activity WHERE pid pg_backend_pid() -- 不kill掉自己的进程 and datnameZZZ --涉及到的数据库名 and usenameZZZ --涉及到的用户名 and query like %ZZZ% – 涉及到的语句 order by (now()-query_start) desc; – 根据执行时间长短排序先kill执行时间长的方案二针对高并发的情况循环kill符合条件的会话至还剩1000个with tmp3 as (select count(*) as cnt from pg_stat_activity WHERE pid pg_backend_pid() and datnamedevice_manager and usenameapp_rw and stateactive and query like %update%) select case when cnt 1000 then (with tmp1 as ( select pg_terminate_backend(pid) from (select pid from pg_stat_activity WHERE 12 ) as foo1) select count(*) from tmp1 ) when cnt 1000 then (with tmp2 as ( select pg_terminate_backend(pid) from (select pid from pg_stat_activity WHERE pid pg_backend_pid() and datnamedevice_manager and usenameapp_rw and stateactive and query like %update% order by backend_start limit 100) as foo2) select count(*) from tmp2 ) end as kill_if_too_many_process from tmp3 \watch 1;方案三循环kill完符合条件的会话更暴力-- 1. 先确认pid对应的sql是需要kill的sql没有别的类似相似的sql干扰 SELECT pid,query FROM pg_stat_activity WHERE pid pg_backend_pid() and datnameXXX and usenameYYY and stateactive and query like %ZZZZZZZZ% order by (now()-query_start) desc; -- 2. 然后批量循环kill session select pg_terminate_backend(pid) from (SELECT pid FROM pg_stat_activity WHERE pid pg_backend_pid() and datnameXXX and usenameYYY and stateactive and query like %ZZZ% ) a \watch 5;四、 MySQL1. awsselect concat(call mysql.rds_kill(,id,);) from information_schema.processlist where userZZZ and info like %ZZZ% -- 当前消耗高的SQL语句 and command -- 按照SQL语句的状态 order by time desc; -- 在SQL命令行得到的kill命令不能直接粘贴复制可通过shell命令快速得到kill id的脚本 mysql -uroot -p -h xxxx kill_query.sh kill_id.txt2. 阿里云select concat(KILL ,id,;) from information_schema.processlist where userZZZ -- 操作的数据库用户 and info like %ZZZ% -- 当前消耗高的SQL语句 and command -- 按照SQL语句的状态 order by time desc; -- 根据操作时间排序先kill执行时间长的 -- 在SQL命令行得到的kill命令不能直接粘贴复制可通过shell命令快速得到kill id的脚本 mysql -uroot -p -h xxxx kill_query.sh kill_id.txt3. 内网3.1 数据库内操作select concat(KILL ,id,;) from information_schema.processlist where info like %ZZZ%; -- 查询结果输出到文件 select concat(KILL ,id,;) from information_schema.processlist where info like %ZZZ% into outfile /tmp/kill_session.sql; -- 执行生成的sql文件 source /tmp/kill_session.sql;3.2 操作系统中操作要求登录到数据库主机杀掉当前所有的MySQL连接mysqladmin -uroot -p processlist|awk -F | {print $2}|xargs -n 1 mysqladmin -uroot -p kill杀掉指定用户运行的连接这里为Mike# 假定kill掉所有ZZZ用户的线程 mysqladmin -uroot -p processlist|awk -F | {if($3 Mike)print $2}|xargs -n 1 mysqladmin -uroot -p kill

相关推荐

如何使用Jellium Desktop设计自定义媒体标签打印模板
如何使用Jellium Desktop设计自定义媒体标签打印模板

如何使用Jellium Desktop设计自定义媒体标签打印模板 【免费下载链接】jellium-desktop An unofficial desktop client for Jellyfin 项目地址: https://gitcode.com/GitHub_Trending/je/jellium-desktop Jellium Desktop是一款非官方的Jellyfin桌面客户端,为… · 2026/11/16 3:30:43

深入linkify-it源码:理解Unicode支持的实现原理
深入linkify-it源码:理解Unicode支持的实现原理

深入linkify-it源码:理解Unicode支持的实现原理 【免费下载链接】linkify-it Links recognition library with full unicode support 项目地址: https://gitcode.com/gh_mirrors/li/linkify-it linkify-it 是一款强大的链接识别库,其核心优势在于… · 2026/9/17 3:41:02

DynamicJSON在iOS开发中的应用:网络请求与本地数据处理实践
DynamicJSON在iOS开发中的应用:网络请求与本地数据处理实践

DynamicJSON在iOS开发中的应用:网络请求与本地数据处理实践 【免费下载链接】DynamicJSON Access JSON properties dynamically like JavaScript using Swift 4.2s new dynamicMemberLookup feature 项目地址: https://gitcode.com/gh_mirrors/dy/DynamicJSON … · 2026/9/3 2:12:00

射洪电工证复审流程内部消息:工地太忙根本没时间复习考试怎么办
射洪电工证复审流程内部消息:工地太忙根本没时间复习考试怎么办

射洪电工证复审流程内部消息:工地太忙根本没时间复习考试怎么办 工地太忙根本没时间复习考试,这句话不是我说的,是干了七八年现场的电工朋友说的。但你别以为可以拖, 射洪电工证复审流程… · 2026/11/16 3:29:38

电工证能往外租吗官方回应来了工地电工太忙根本没时间复习
电工证能往外租吗官方回应来了工地电工太忙根本没时间复习

电工证能往外租吗官方回应来了工地电工太忙根本没时间复习 工地太忙根本没时间复习考试,电工证能不能往外租?这个问题几乎每个在一线干活的电工都问过。 河南省应急管理厅 近期明确表示,特种作业操作证是个人执业资格的唯一证明,… · 2026/11/16 3:29:38

教师培训机构考电工证千万别踩坑 你在外省的证能转吗
教师培训机构考电工证千万别踩坑 你在外省的证能转吗

教师培训机构考电工证千万别踩坑 你在外省的证能转吗 之前考的证在外省能不能转过来?这是很多已经在岗或者正在准备考证的教师培训机构从业者最关心的问题。特别是像信阳浉河区的应届工程类毕业生,刚刚步入职场,对证书的转移、使用范围以及后续的继续教育… · 2026/11/16 3:29:38

临泉县低压电工证怎么考?上岗必备的避坑经验全在这
临泉县低压电工证怎么考?上岗必备的避坑经验全在这

临泉县低压电工证怎么考?上岗必备的避坑经验全在这 工地太忙根本没时间复习考试,这几乎是每个劳务班组负责人的真实写照。特别是像我们这种常年在外跑工地的,一天到晚被各种项目和进度牵着走,哪还有精力去琢磨那本厚厚的低压电工证教材?但别小看这个【临… · 2026/11/16 3:29:38

曲靖特种工培训多少钱?别怕考不过白交培训费
曲靖特种工培训多少钱?别怕考不过白交培训费

曲靖特种工培训多少钱?别怕考不过白交培训费 你是不是也这样,好不容易找到一家靠谱的 曲靖特种工培训 机构,交完培训费就怕考试不过,钱打了水漂?别急,我来帮你理清思路,说说这个培训到底值不值,怎么考才不亏。… · 2026/11/16 3:29:38

低压电工证科目二的开关图千万别踩坑 电工找工作必备技能
低压电工证科目二的开关图千万别踩坑 电工找工作必备技能

低压电工证科目二的开关图千万别踩坑 电工找工作必备技能 找电工工作, 低压电工证科目二的开关图 是你必须掌握的内容,不然连面试资格都拿不到。别以为考个证是小事,这关系到你能不能顺利上岗,也关系到你能不能拿到工资。千万别踩坑,一不小心就可能多… · 2026/11/16 3:28:38

长春初级电工证怎么考?通过率揭秘全在这里
长春初级电工证怎么考?通过率揭秘全在这里

长春初级电工证怎么考?通过率揭秘全在这里 之前考的证在外省能不能转过来?这几乎是每个想从事电工工作的人都会问的问题。特别是那些在外地打拼多年、手里握着一张“外地电工证”的人,到了长春想继续干这一行,第一反应就是“我的证能用吗?”。今天我们就… · 2026/11/16 3:21:55

国内电工证报考条件与考试时间
国内电工证报考条件与考试时间

低压电工证怎么考?学历不高也能报名,官方报名入口全在这 你是不是经常听说“电工证是入行门槛”,但又担心自己学历不够、经验不足,根本报不了名?别急,今天就带你从零了解【国内电工证】的报考流程、考试内容,还有怎么在 官方报名入口… · 2026/11/16 3:01:18

电工作业时如何断电?电子证书到底能不能全国通用?
电工作业时如何断电?电子证书到底能不能全国通用?

电工作业时如何断电?电子证书到底能不能全国通用? 实操考试心里没底怕挂科,特别是电工作业时如何断电这一操作,不仅关系到你能不能拿到证书,更关系到以后能不能顺利上岗。很多人觉得这不过就是“断个电”,但其实这里面的门道可不少,稍有不慎就可能出错… · 2026/11/15 0:00:50

电工证培训的通知在哪考?别再被中介骗了
电工证培训的通知在哪考?别再被中介骗了

电工证培训的通知在哪考?别再被中介骗了 你是不是还在为 电工证培训的通知在哪考 发愁?网上搜了一堆信息,结果要么是挂羊头卖狗肉的培训机构,要么就是打着“包过”旗号的骗子?别急,今天我来给你讲讲, 电工证培训的通知… · 2026/11/16 0:00:34

高级电工证企业认可吗保姆级教程:实操考试心里没底怕挂科?看完这些建议再考不迟
高级电工证企业认可吗保姆级教程:实操考试心里没底怕挂科?看完这些建议再考不迟

高级电工证企业认可吗保姆级教程:实操考试心里没底怕挂科?看完这些建议再考不迟 你是不是也这样,站在高压电工实操考试的设备前,手心冒汗,生怕一个操作失误就被判不合格?实操考试心里没底怕挂科,这是很多准备考高级电工证的人的真实写照。别担心,今天… · 2026/11/16 0:00:34

电工证去哪个部门考核值不值得考 信阳转岗人真实经历分享
电工证去哪个部门考核值不值得考 信阳转岗人真实经历分享

电工证去哪个部门考核值不值得考 信阳转岗人真实经历分享 怕考不过白交培训费?你不是一个人,信阳的李师傅去年刚转岗做电工,就因为没搞清楚电工证去哪个部门考核,差点交了8000块的培训费。别急,下面这份实操考试全攻略,告诉你电工证到底值不值得考… · 2026/11/16 0:00:34

双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试
双极步进电机控制实战:DRV8818PWPR与PIC18F86K22驱动调试

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/15 1:51:20

STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析
STM32F207ZG + DRV8818PWPR 步进电机驱动实战解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/15 4:02:19

DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案
DRV8818PWPR+dsPIC30F4013工业级双极步进电机控制方案

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/11/15 3:02:05

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码