MYSQL如何查看進(jìn)程和kill進(jìn)程
如何查看進(jìn)程和kill進(jìn)程
有時(shí)候我們在執(zhí)行一條SQL語句時(shí),或者更改表結(jié)構(gòu)時(shí),由于這張表的數(shù)據(jù)量巨大,往往會(huì)在執(zhí)行操作后就會(huì)卡住…然后這張表就會(huì)被鎖住..這時(shí),我們可以殺掉這個(gè)進(jìn)程.
這里有兩種方法查看和殺掉進(jìn)程
第一種
SHOW PROCESSLIST;
執(zhí)行上述命令,可以看到下圖:

然后找到對應(yīng)的ID:
KILL 41515;
就OK了.
第二種
需要借助工具,Navicat. 工具->服務(wù)器監(jiān)控->MySQL

打開之后就可以看到下圖:

然后還是找到對應(yīng)的ID :
KILL 42736;
kill所有慢查詢進(jìn)程和鎖表進(jìn)程
1、kill所有慢查詢進(jìn)程
#!/bin/bash
mysql -uroot -pMy_Password -e "show processlist" | grep -i "Query" > slow_query.log
for query in `cat slow_query.log | awk '{print $1}'`
do
? ?echo "kill $query;" > kill_slow_query.sql
done登錄mysql,執(zhí)行:
mysql> source kill_slow_query.sql
或者:
#!/bin/bash
for query in `mysqladmin -uroot -pMy_Password processlist | grep -i 'Query' | awk '{print $2}'`
do
? ?mysqladmin kill ${query}
done2、kill所有死鎖進(jìn)程
#!/bin/bash
mysql -uroot -pMy_Password -e "show processlist" | grep -i "Locked" > locked.log
for lock in `cat locked.log | awk '{print $1}'`
do
? ?echo "kill $lock;" > kill_locked.sql
done登錄mysql,執(zhí)行:
mysql> source kill_locked.sql
或者:
#!/bin/bash
for lock in `mysqladmin -uroot -pMy_Password processlist | grep -i 'Locked' | awk '{print $2}'`
do
? ?mysqladmin kill ${lock}
done以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
mysql 5.7.17 winx64免安裝版配置方法圖文教程
這篇文章主要為大家詳細(xì)介紹了mysql 5.7.17 winx64免安裝版配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01
MySQL 如何查找并刪除重復(fù)記錄的實(shí)現(xiàn)
這篇文章主要介紹了MySQL 如何查找并刪除重復(fù)記錄的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Node.js下向MySQL數(shù)據(jù)庫插入批量數(shù)據(jù)的方法
這篇文章主要介紹了Node.js下向MySQL數(shù)據(jù)庫插入批量數(shù)據(jù)的實(shí)現(xiàn)方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-10-10

