PHP实现清除MySQL死连接的方法


Posted in PHP onJuly 23, 2016

本文实例讲述了PHP实现清除MySQL死连接的方法。分享给大家供大家参考,具体如下:

连接的情况,主要表现为有过多的Sleep连接,并且Time时间很长,占满了所有的可用连接数,以至于其它用户无法再连接数据库。我开始考虑调节MySQL数据库参数,但是改了许多参数仍然没有解决这个问题。于是想了一个比较狠的办法,写一个php脚本,每2分钟执行一次,发现死连接(超过120秒)就Kill掉,这样再也不会让某些程序搞死数据库服务器了,下面是 Kill死连接的小程序:

kill-mysql-sleep-proc.php:

define('MAX_SLEEP_TIME',120);
$hostname="localhost";
$username="root";
$password="password";
$connect=mysql_connect($hostname,$username,$password);
$result=mysql_query("SHOWPROCESSLIST",$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);
?>

将它当中的$password改成你实际的数据库密码,死连接的时间也可以修改。然后加入计划任务就可以了。比如用crontab-e命令加入:

*/2****php/usr/local/sbin/kill-mysql-sleep-proc.php

就可以每隔2分钟检查并清除一次数据库中的死连接了

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
一个简单的自动发送邮件系统(二)
Oct 09 PHP
php ignore_user_abort与register_shutdown_function 使用方法
Jun 14 PHP
利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法
Dec 19 PHP
Youku 视频绝对地址获取的方法详解
Jun 26 PHP
php颜色转换函数hex-rgb(将十六进制格式转成十进制格式)
Sep 23 PHP
php图片缩放实现方法
Feb 20 PHP
PHP中ltrim与rtrim去除左右空格及特殊字符实例
Jan 07 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
Mar 21 PHP
php获取网站根目录物理路径的几种方法(推荐)
Mar 04 PHP
Yii2结合Workerman的websocket示例详解
Sep 10 PHP
laravel 事件/监听器实例代码
Apr 12 PHP
laravel框架 laravel-admin上传图片到oss的方法
Oct 13 PHP
php实现批量修改文件名称的方法
Jul 23 #PHP
golang与PHP输出excel示例
Jul 22 #PHP
PHP微信支付实例解析
Jul 22 #PHP
golang与php实现计算两个经纬度之间距离的方法
Jul 22 #PHP
PHP微信刮刮卡 附微信接口
Jul 22 #PHP
php判断用户是否关注微信公众号
Jul 22 #PHP
微信支付扫码支付php版
Jul 22 #PHP
You might like
全文搜索和替换
2006/10/09 PHP
用php实现的获取网页中的图片并保存到本地的代码
2010/01/05 PHP
phpmyadmin3 安装配置图解教程
2012/03/29 PHP
php实现给图片加灰色半透明效果的方法
2014/10/20 PHP
ThinkPHP5.1框架数据库链接和增删改查操作示例
2019/08/03 PHP
图片在浏览器中底部对齐 解决方法之一
2011/11/30 Javascript
不使用jquery实现js打字效果示例分享
2014/01/19 Javascript
Node.js中创建和管理外部进程详解
2014/08/16 Javascript
jQuery实现向下滑出的平滑下拉菜单效果
2015/08/21 Javascript
ES6新特性之解构、参数、模块和记号用法示例
2017/04/01 Javascript
vuex中使用对象展开运算符的示例
2017/09/25 Javascript
vue.js整合mint-ui里的轮播图实例代码
2017/12/27 Javascript
js经验分享 JavaScript反调试技巧
2018/03/10 Javascript
详解适配器在JavaScript中的体现
2018/09/28 Javascript
详解基于iview-ui的导航栏路径(面包屑)配置
2019/02/22 Javascript
node将geojson转shp返回给前端的实现方法
2019/05/29 Javascript
Element实现表格分页数据选择+全选所有完善批量操作
2019/06/07 Javascript
kafka调试中遇到Connection to node -1 could not be established. Broker may not be available.
2019/09/17 Javascript
Vue中通过vue-router实现命名视图的问题
2020/04/23 Javascript
Vue获取微博授权URL代码实例
2020/11/04 Javascript
[01:14]2019完美世界城市挑战赛(秋季赛)全国总决赛精彩花絮
2020/01/08 DOTA
Python爬虫之Selenium下拉框处理的实现
2020/12/04 Python
在python中对于bool布尔值的取反操作
2020/12/11 Python
Python的collections模块真的很好用
2021/03/01 Python
详解css3使用transform出现字体模糊的解决办法
2020/10/16 HTML / CSS
Html5 new XMLHttpRequest()监听附件上传进度
2021/01/14 HTML / CSS
爱尔兰家电数码商城:Currys PC World爱尔兰
2016/07/23 全球购物
什么是java序列化,如何实现java序列化
2012/11/14 面试题
业务部主管岗位职责
2014/01/29 职场文书
全神贯注教学反思
2014/02/03 职场文书
文艺演出策划方案
2014/06/07 职场文书
春节慰问信范文
2015/02/15 职场文书
校车安全管理责任书
2015/05/11 职场文书
入党群众意见范文
2015/06/02 职场文书
运动会新闻稿
2015/07/17 职场文书
深入理解mysql事务隔离级别和存储引擎
2022/04/12 MySQL