MySQL连接导致服务器消失,进程列表中没有任何内容

时间:2016-07-06 01:22:02

标签: mysql

我有大量的连接但是当我发布show full processlist时,我没有显示任何接近我看到的连接。这些连接孤儿是某种吗?我尝试了flush hosts命令并且连接仍然存在,即使重新启动服务器并重新启动mysql服务器也是如此。

我认为这些连接会导致与数据库建立新连接的问题。用户正在使用#34;服务器消失了#34;错误。我该如何清除这些?

请参阅以下命令:

mysql> show status like '%onn%';
+--------------------------+-------+
| Variable_name            | Value |
+--------------------------+-------+
| Aborted_connects         | 5     |
| Connections              | 11743 |
| Max_used_connections     | 24    |
| Ssl_client_connects      | 0     |
| Ssl_connect_renegotiates | 0     |
| Ssl_finished_connects    | 0     |
| Threads_connected        | 6     |
+--------------------------+-------+
7 rows in set (0.00 sec)



mysql> show full processlist;
+-------+---------+----------------------+--------------------+---------+-------+-------+-----------------------+
| Id    | User    | Host                 | db                 | Command | Time  | State | Info                  |
+-------+---------+----------------------+--------------------+---------+-------+-------+-----------------------+
|  4494 | rode | localhost:43411      | NULL               | Sleep   | 11159 |       | NULL                  |
|  4506 | rode | localhost:43423      | information_schema | Sleep   | 11159 |       | NULL                  |
|  4554 | rode | localhost:43511      | performance_schema | Sleep   | 11112 |       | NULL                  |
| 11500 | ass      | serv:1243 | Home-Tech          | Sleep   |     0 |       | NULL                  |
| 11743 | root    | localhost            | NULL               | Query   |     0 | NULL  | show full processlist |
| 11744 | ass      | out:6070  | Home-Tech          | Sleep   |     4 |       | NULL                  |
| 11745 | ass      | out:6074  | HTGlobal           | Sleep   |     8 |       | NULL    

1 个答案:

答案 0 :(得分:1)

The MySQL server has gone away(错误2006)有两个主要原因

服务器超时并关闭连接。要修复,请检查my.cnf配置文件中的“wait_timeout” mysql变量是否足够大。

服务器丢弃了错误或过大的数据包。如果mysqld获取的数据包太大或不正确,则会假定客户端出现问题并关闭连接。要修复,您可以增加my.cnf文件中的最大数据包大小限制“max_allowed_packet”,例如。设置max_allowed_packet = 128M,然后设置sudo /etc/init.d/mysql restart

有两种主要方法可以解决这个问题。如果上述更改不存在您的linux或Windows mysql数据库服务器的问题;您需要增加服务器上的RAM或观看它的进程。

是在 windows 还是 linux 框中?