飞翔的草莓
(Ti D Ber Sbyzie Cv)
1
【 TiDB 使用环境】生产环境
【 TiDB 版本】
7.5
【复现路径】做过哪些操作出现的问题
执行了批量删除,删除某个表6月1日之前的所有数据。
BATCH ON id
LIMIT 1000 DELETE FROM mg_control_inventory WHERE create_time < ‘2024-06-01 00:00:00’
【遇到的问题:问题现象及影响】
执行SHOW FULL PROCESSLIST后,发现没有在执行的DELETE语句,但是在管理后台上看,DELETE语句是在执行的,该怎么查到对应的任务呢
【附件:截图/日志/监控】
SELECT * FROM information_schema.cluster_processlist;
看看有没有呢
你的sql确认还在执行吗?正常执行的话SHOW PROCESSLIST;是可以看到的。
飞翔的草莓
(Ti D Ber Sbyzie Cv)
6
现在有了,但是我KILL掉之后,它一会有自动出现了,我想取消 批量删除那个任务怎么做呢
KILL TIDB <processlist_id>
是这么杀的?你为什么有多个?你开了几个窗口执行这个sql啊?
飞翔的草莓
(Ti D Ber Sbyzie Cv)
10
就是要停这个任务,batch on执行的,找不到根任务在哪
飞翔的草莓
(Ti D Ber Sbyzie Cv)
11
KILL命令杀的,就一个窗口,删完后自己就又出来了
客户端 有循环脚本 不断发起请求? 比如找到(非tidb)客户端的进程删掉?
我之前用datax 写了个循环查询 的同步脚本。把python请求进程删了就可以了。 如果循环语句有100个,在tidb就得删100次。不知道有没有借鉴意义。
那你是用什么工具执行的这条sql,可能是你工具的问题,你找到工具进程给杀掉看下
zhanggame1
(Ti D Ber G I13ecx U)
16
select * from INFORMATION_SCHEMA.CLUSTER_PROCESSLIST查看,show不全
TiDB提供了一些系统表,可以帮助您监控和管理正在运行的任务。您可以查询INFORMATION_SCHEMA.cluster_processlist表来查看集群中所有TiDB实例上的进程列表。
INFORMATION_SCHEMA.cluster_processlist表
vincentLi
(Ti D Ber X5 H Em4hc)
20
show processlist 只会显示你连接的tidb server节点上的任务,不完全。需要查找INFORMATION_SCHEMA.cluster_processlist
### TiDB 里面可以执行 kill 命令吗?
在show processlist中的host字段的主机里面看看是怎么触发这条SQL语句过来的