mysql連線池爆滿,釋放程式長連線殭屍程式
程式啟動報錯提示連線池爆滿不可用的情況下,我們從資料庫入手檢視哪些程式長時間等待
進入mysql命令介面輸入:show processlist
下面我們查詢linux系統上mysql所在伺服器的位置which mysql,使用which命令前提是你的 cat /etc/profile你的系統環境變數檔案內配置了檢索的目錄,如果安裝目錄沒有配置在profile檔案內是查詢不到安裝目錄的,一般自行安裝會在/data/mysql目錄下,具體目錄要自行檢索
下面我們編寫清理mysql長連線的sleep狀態的程式 命名為cleanmysql.sh的shell指令碼檔案
指令碼執行的時候需要動態傳入3個引數,這些引數可以寫死也可以傳遞,sh cleanmysql.sh 引數1 引數2 引數3 【引數之間用空格隔開】
例如sh cleanmysql.sh 127.0.0.1 3306 root因為我們的shell指令碼中的hostip=$1 port=$2 user=$3是需要的伺服器地址、埠、使用者名稱
#!/bin/sh
MYSQLDIR=/data/mysql/binMYSQLTOOL=$MYSQLDIR/mysql
MYSQLUSER=root
MYSQLPASS=Ig#pThp%x
usage()
{
echo "Usage: $0 ip port db_user"
echo "Example: $0 1.1.1.1 3306 db_user"
exit
}
if [ $# -ne 3 ];then
usage
fi
hostip=$1
port=$2
user=$3
sleepid="SELECT ID FROM information_schema.PROCESSLIST t WHERE t.COMMAND='Sleep' and user='$3' and time >1000;"
echo $sleepid
$MYSQLTOOL -h$hostip -u$MYSQLUSER -p$MYSQLPASS -P$port -e "$sleepid" >sleepIDs
while read sID
do
echo $sID
$MYSQLTOOL -h$hostip -u$MYSQLUSER -p$MYSQLPASS -P$port -e "kill $sID"
done<sleepIDs
相關文章
- golang連線MySQL時候的連線池設定GolangMySql
- JaCoCo助您毀滅線上殭屍程式碼
- swoole連線池原理解釋
- Python實現MySQL連線池PythonMySql
- 連線池
- 連線MYSQL 錯誤程式碼2003MySql
- Druid MySQL 連線池本地實踐UIMySql
- Swoole MySQL 連線池的實現MySql
- mysql、redis 客戶端連線池MySqlRedis客戶端
- Http持久連線與HttpClient連線池HTTPclient
- 連線池和連線數詳解
- Socket程式設計-長連線與短連線,心跳(keep-alive)程式設計Keep-Alive
- Hyperf 如何快速釋放 DB 連線
- HTTP連線池HTTP
- django連線池Django
- Mysql關於長連線短連線優劣比較MySql
- 長連線和短連線
- 殭屍程式,孤兒程式
- MYSQL語法:左連線、右連線、內連線、全外連線MySql
- MySql資料庫連線池專題MySql資料庫
- mysql資料庫連線池配置教程MySql資料庫
- 【MySQL】自定義資料庫連線池和開源資料庫連線池的使用MySql資料庫
- MySQL筆記3——內連線/外連線、多表連線MySql筆記
- fork和殭屍程式
- 自定義連線池
- ElasticSearch連線池建立Elasticsearch
- 殭屍程式和孤兒程式
- mysql 開放遠端連線許可權連不上MySql
- php7連線mysql測試程式碼PHPMySql
- [轉帖]HikariCP連線池引數解釋
- IIS連線數、併發連線數、最大併發工作執行緒數、應用程式池的佇列長度、應用程式池的最大工作程式數詳解執行緒佇列
- 基於 swoole 協程的 MySQL 連線池MySql
- 基於swoole的mysql連線池實現MySql
- http的長連線和短連線HTTP
- 長連線和短連線的使用
- 【JDBC】java連線池模擬測試 連線oracleJDBCJavaOracle
- 【JDBC】使用OracleDataSource建立連線池用於連線OracleJDBCOracle
- mysql INNER JOIN、LEFT JOIN、RIGHT JOIN;內連線(等值連線)、左連線、右連線MySql
- Linux中殭屍程式是什麼意思?怎麼檢視殭屍程式?Linux