sql 在MySQL中查找长时间运行的查询

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql 在MySQL中查找长时间运行的查询相关的知识,希望对你有一定的参考价值。

host="octopus-read-1"
password=XXXXXXX
client="mysql -uhousetrip -p${password} --ssl-ca=/var/www/housetrip/shared/config/mysql-ssl-ca-cert.pem -h ${host}.cjumddpb9pgp.eu-west-1.rds.amazonaws.com housetrip_production"
query="SELECT id
  FROM information_schema.processlist
  WHERE command <> 'Sleep'
  AND info NOT LIKE '%PROCESSLIST%'
  AND command <> 'Killed'
  AND info LIKE '%EXPLAIN'"

$client -e "${query}" | \
sed -e 's/[^0-9]//g; s/^/kill /; s/$/;/' | {
  while read LINE ; do
    echo "$LINE"
    echo "$LINE" | $client
  done
}
SELECT id,state,command,time,left(replace(info,'\n','<lf>'),120)
FROM information_schema.processlist
WHERE command <> 'Sleep' 
AND info NOT LIKE '%PROCESSLIST%'
ORDER BY time DESC LIMIT 50;

以上是关于sql 在MySQL中查找长时间运行的查询的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 查询以查找间隔或 12 个月或更长时间的记录

SQL 调优,长时间运行的查询 + rownum

在 MySQL 5.5 的“查询结束”中运行更长时间的微小插入查询,过去在 5.0 中啥都没有

MySQL 5.5 中的长时间运行查询在 5.6 中非常快

MySql 删除需要很长时间

自动杀死长时间运行的查询(MySql),Apache Tomcat DataSource