Mysql 连接sleep状态问题解决。

  昨日mysql总是出问题,各种程序在运行时,出现了连接已断开的问题。

  导致此问题的原因:

  1. 最大连接数

  2. 网络问题

  3. mysql服务器资源问题

  然而,上面最常见的3个问题都没有出现。后来查看了mysql 的连接状态(show processlist),发现有大量的sleep状态,而且sleep时间很长

这是想到了,是不是mysql防止睡眠时间太长有些容错机制,使用 show variables like “%timeout%”,,interactive_timeout和wait_timeout  值表示最大sleep

时长,默认为8个小时。其实程序最好是不要用长连接,用完即释放,保证服务器的稳定是必要的。

时间: 2024-07-31 14:30:45

Mysql 连接sleep状态问题解决。的相关文章

查看mysql连接状态各类参数

命令: show processlist; 如果是root帐号,你能看到所有用户的当前连接.如果是其它普通帐号,只能看到自己占用的连接. show processlist;只列出前100条,如果想全列出请使用show full processlist; mysql> show processlist; 命令: show status; 命令:show status like '%下面变量%'; Aborted_clients 由于客户没有正确关闭连接已经死掉,已经放弃的连接数量. Aborted

mysql连接卡死,很多线程sleep状态,导致CPU中mysqld占用率极高

关闭所有 .................................. .连接: ##把全部的MySQL连接kill掉for i in $(mysql -uroot -p123456 -Bse "show processlist" | awk '{print $1}');do mysql -uroot -p123456 -e "kill $i";done ##把admin用户的连接kill掉for i in $(mysql -uroot -p123456 -

如何解决MySQL连接超时关闭

最近做网站有一个站要用到WEB网页采集器功能,当一个PHP脚本在请求URL的时候,可能这个被请求的网页非常慢慢,超过了mysql的 wait-timeout时间,然后当网页内容被抓回来后,准备插入到MySQL的时候,发现MySQL的连接超时关闭了,于是就出现了"MySQL server has gone away"这样的错误提示,解决这个问题,我的经验有以下两点,或许对大家有用处: 第一种方法: 当然是增加你的 wait-timeout值,这个参数是在my.cnf(在Windows下台

CentOS下安装MySQL,Windows下使用Navicat for MySql连接

安装 查看有没有安装过:          yum list installed mysql*          rpm -qa | grep mysql* 查看有没有安装包:          yum list mysql* 安装mysqlclient:          yum install mysql 安装mysql server端:          yum install mysql-server          yum install mysql-devel 启动&&停止

mysql绿色版安装问题解决(ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061))

原来一直是使用MySQL安装版没有出现过问题,今天在安装绿色版MySQL时出现了点问题 在安装成windows服务成功后,用net start mysql 启动时提示启动成功,但当我连接mysql就报以下错误: ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061) my.ini文件内容: [mysqld]basedir=E://databases//mysqldatadir=F://databases//

(一)MySQL 连接优化

一.MySQL 连接优化 1.查看连接参数(show variables) mysql> show variables like '%connect%'; +-----------------------------------------------+-----------------+ | Variable_name | Value | +-----------------------------------------------+-----------------+ | characte

MySQL连接操作

关闭所有连接: ##把全部的MySQL连接kill掉for i in $(mysql -uroot -p123456 -Bse "show processlist" | awk '{print $1}');do mysql -uroot -p123456 -e "kill $i";done ##把admin用户的连接kill掉for i in $(mysql -uroot -p123456 -se "show processlist" | awk

MySQL连接问题【如何解决MySQL连接超时关闭】

--MySQL连接问题[如何解决MySQL连接超时关闭] ------------------------------------------------转载 最近做网站有一个站要用到WEB网页采集器功能,当一个PHP脚本在请求URL的时候,可能这个被请求的网页非常慢慢,超过了mysql的 wait-timeout时间,然后当网页内容被抓回来后,准备插入到MySQL的时候,发现MySQL的连接超时关闭了,于是就出现了"MySQL server has gone away"这样的错误提示

nodejs + redis/mysql 连接池问题

nodejs + redis/mysql 连接池问题 需不需要连接池 连接池的作用主要是较少每次临时建立连接所带来的开销.初步一看,nodejs运行单线程上,它不能同时使用多个连接,乍一看是不需要连接池的.但是这只是我们初步下意识的感觉,下面我们详细分析来看看这个结论对是不对. 先从简单的redis开始. redis服务器也是运行在单线程上的.俩都是单线程,看起来更加坚定不需要连接池的结论了. 从详细的图像来看看nodejs 连接 redis用连接池有没有意义. 上图中,nodejs共有俩连接,