与
ESC
输入关键词搜索文章

php使用kill杀死mysql中sleep链接

全文约 62 字预计阅读 1 分钟
大量sleep产生的原因从三点排查: 1.程序中,不使用持久链接,即使用mysql_connect而不是pconnect 2. 程序执行完毕,应该显式调用mysql_close 3. 数据库查询不够优化,过度耗时
<?php
define('MAX_SLEEP_TIME', 1000);

$hostname = "ip:port";
$username = "username";
$password = "password";

$connect = mysql_connect($hostname, $username, $password);
$result = mysql_query("SHOW PROCESSLIST", $connect);
while ($proc = mysql_fetch_assoc($result)) {
 if ($proc["Command"] == "Sleep" && $proc["Time"] > MAX_SLEEP_TIME) {
 @mysql_query("KILL " . $proc["Id"], $connect);
 }
}
mysql_close($connect);
?>
php使用kill杀死mysql中sleep链接
分享

发表评论

评论 0 条

暂无评论,来说点什么吧。