我mysql从我的Linux shell 连接到.我不时地运行一个SELECT太大的查询.它打印和打印,我已经知道这不是我的意思.我想停止查询.
击中Ctrl+C(几次)mysql完全杀死并带我回到外壳,所以我必须重新连接.
是否可以在不自杀的情况下停止查询mysql?
我想按时间排序,但似乎无法做到这一点?
mysql> show processlist;
+--------+-------------+--------------------+------+---------+--------+----------------------------------+------------------------------------------------------------------------------------------------------+
| Id | User | Host | db | Command | Time | State | Info |
+--------+-------------+--------------------+------+---------+--------+----------------------------------+------------------------------------------------------------------------------------------------------+
| 1 | system user | | NULL | Connect | 226953 | Waiting for master to send event | NULL |
| 2 | system user | | v3 | Connect | 35042 | Locked | update postings a
left join cities b on b.id=a.job_city_id
left join states h on h.id=b.stat |
| 313888 | irnadmin …Run Code Online (Sandbox Code Playgroud) 当我在MySQL数据库中运行SHOW PROCESSLIST时,我得到了这个输出:
mysql> show full processlist;
+--------+------+-----------+--------+---------+-------+-------+-----------------------+
| Id | User | Host | db | Command | Time | State | Info |
+--------+------+-----------+-------+---------+-------+-------+-----------------------+
| 411665 | root | localhost | somedb | Sleep | 11388 | | NULL |
| 412109 | root | localhost | somedb | Query | 0 | NULL | show full processlist |
+--------+------+-----------+-------+---------+-------+-------+------------------------+
Run Code Online (Sandbox Code Playgroud)
我想知道命令下的"睡眠"过程.这是什么意思?为什么它长时间运行并显示NULL?它使数据库变慢,当我终止进程时,它正常工作.请帮我.
我们如何杀死mysql睡眠过程喜欢:
+------+-----------+-----------+------------------------+---------+------+----------------+-------------------------------------------------------------------------------------------+ | Id | User | Host | db | Command | Time | State | Info | +------+-----------+-----------+------------------------+---------+------+----------------+-------------------------------------------------------------------------------------------+ | 2477 | stageuser | localhost | jj_production_11102013 | Query | 0 | end | SELECT * FROM wp_comments WHERE blog_id = 1071 ORDER BY comment_date_gmt DESC LIMIT 0, 50 | | 3050 | stageuser | localhost | jj_production_11102013 | Query | 0 | Sorting result | SELECT * FROM wp_comments WHERE blog_id = 1071 ORDER BY comment_date_gmt DESC LIMIT …
如何从Unix获取所有正在运行的进程的进程列表,包含命令/进程名称和进程ID,因此我可以过滤和终止进程.
我有一个脚本运行一批非常相似的查询。
所有这些,除了一个,运行没有任何问题。
只有一个查询卡住了。
在“show processlist”中,查询有 state=null
根据文档,show processlist 应该只为“show processlist”线程本身报告“State=null”。
Server version: 5.0.67 MySQL Community Server (GPL)
mysql> show processlist;
+---------+--------+-----------+--------------+---------+------+-------+------------------------------------------------------------------------------------------------------+
| Id | User | Host | db | Command | Time | State | Info |
+---------+--------+-----------+--------------+---------+------+-------+------------------------------------------------------------------------------------------------------+
| 3866613 | user | localhost | db_name | Query | 1986 | NULL | select log_time,log_action,log_action_id,log_object_id, @abcde:=if(log_action='abcde',to_ |
| 3873414 | root | localhost | NULL | Query | 0 | NULL | show processlist |
+---------+--------+-----------+--------------+---------+------+-------+------------------------------------------------------------------------------------------------------+
2 rows in …Run Code Online (Sandbox Code Playgroud) 当我show processlist在mysql中做的时候,我得到了进程列表.其中一个进程是binlog dump从quit运行很长时间.
什么是binlog转储?我需要杀死这个.如果我杀了这个过程怎么办?
processlist ×7
mysql ×6
kill ×2
filter ×1
ps ×1
python ×1
sql-order-by ×1
thread-state ×1
unix ×1