mysql常用命令

mysql备份恢复常用

常用工具命令集合

 1
 2
 3
 4
 5
 6
 7
 8
 9
10

-- 查看长时间运行的查询
SELECT id, user, host, db, command, time, state, LEFT(info, 100) as query
FROM information_schema.processlist
WHERE time > 30
  AND command != 'Sleep'
ORDER BY time DESC;

-- 杀死长时间运行的查询
KILL QUERY <process_id>;

定位cpu占用过高的sql

  1. 定位线程
1
2
3
4
5
# 找出mysql 的进程号
ps -ef | grep mysql

# 根据进程号,找出占用CPU靠前的线程号
top -H -p <mysqld进程id>
  1. 数据库定位sql
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
SELECT
    a.USER,
    a.HOST,
    a.db,
    b.thread_os_id,
    b.thread_id,
    a.id processlist_id,
    a.command,
    a.time,
    a.state,
    a.info
FROM
    information_schema.PROCESSLIST a,
    performance_schema.threads b
WHERE
    a.id = b.processlist_id
AND b.thread_os_id = <具体线程id>;
Licensed under CC BY-NC-SA 4.0
转载或引用本文时请遵守许可协议,知会作者并注明出处
不得用于商业用途!
最后更新于 2025-05-03 00:00 UTC