安全清理mysql數據內存的方法「mysql數據庫連接數過多如何釋放」

Mysql數據庫連接過高,怎麼快速殺掉連接

percona官方給mysql數據庫提供了很多開源的工具,而且都非常好用,下面就先介紹一個殺會話的超強工具,比Mysql數據庫自帶的kill強太多,例如可以批量殺掉某個用戶的會話,批量殺掉某個用戶針對某個表的查詢會話。
先介紹一下怎麼安裝percona-toolkit,檢查需要的依賴包

rpm -qa perl-DBI perl-DBD-MySQL perl-Time-HiRes perl-IO-Socket-SSL
Mysql數據庫連接過高,怎麼快速殺掉連接

如果有包缺失,可以通過yum進行安裝

yum install perl-DBI
yum install perl-DBD-MySQL
yum install perl-Time-HiRes
yum install perl-IO-Socket-SSL

準備好之後,從percona的官網下載percona-toolkit工具包,下載網址如下所示

https://www.percona.com/downloads/percona-toolkit/LATEST/
下載好之後,就可以安裝了

yum install percona-toolkit-3.1.0-2.el7.x86_64.rpm

安裝好之後,就用下面的方法查看一下工具集

Mysql數據庫連接過高,怎麼快速殺掉連接

pt-kill就在其中,下面就介紹一下pt-kill最常用的功能

  1. 安裝用戶去殺掉會話,並在將殺掉的日誌記錄到文件,後台執行
pt-kill --host 10.10.57.206 --port 3308 --user 'root' --password 'root' --match-user 'tony' --victim all --interval 10 --kill --daemonize --print --log=/root/kill.log

執行之前tony用戶有2個連接

Mysql數據庫連接過高,怎麼快速殺掉連接

執行之後,tony用戶的兩個連接被殺掉了

Mysql數據庫連接過高,怎麼快速殺掉連接
Mysql數據庫連接過高,怎麼快速殺掉連接
  1. 安裝應用IP來源去殺會話
pt-kill --host 10.10.57.206 --port 3308 --user 'root' --password 'root' --match-host '10.10.57.208|10.10.57.209' --victim all --interval 10 --kill --daemonize --print --log=/root/kill.log
  1. 殺掉空閑時間超過10秒空閑連接
pt-kill --host 10.10.57.206 --port 3308 --user 'root' --password 'root' –match-command Sleep –idle-time 10 --victim all --interval 10 --kill --daemonize --print --log=/root/kill.log

喜歡我的小夥伴,可以在下方留言和關注。

Mysql數據庫連接過高,怎麼快速殺掉連接

原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/280009.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
投稿專員的頭像投稿專員
上一篇 2024-12-20 18:53
下一篇 2024-12-20 18:54

相關推薦

發表回復

登錄後才能評論