Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何删除不再使用的mysql进程?_Mysql_Linux - Fatal编程技术网

如何删除不再使用的mysql进程?

如何删除不再使用的mysql进程?,mysql,linux,Mysql,Linux,如何删除不再使用的mysql进程 我正在创建1000个sql连接,其中一些已不再使用。我想删除所有未使用的进程 此命令将重新启动服务器并关闭所有打开的连接: /etc/init.d/mysqld重新启动 但是,您可能需要首先了解为什么连接没有关闭。您的程序不应保留1000个未关闭的连接。您可以使用show processlist语句列出所有活动连接,然后使用命令kill{connectionid}杀死不需要的连接。正如其他人所指出的,这不是您应该经常做的事情,而是尝试修复应用程序,以便正确关闭未

如何删除不再使用的mysql进程


我正在创建1000个sql连接,其中一些已不再使用。我想删除所有未使用的进程

此命令将重新启动服务器并关闭所有打开的连接:
/etc/init.d/mysqld重新启动


但是,您可能需要首先了解为什么连接没有关闭。您的程序不应保留1000个未关闭的连接。

您可以使用show processlist语句列出所有活动连接,然后使用命令kill{connectionid}杀死不需要的连接。正如其他人所指出的,这不是您应该经常做的事情,而是尝试修复应用程序,以便正确关闭未使用的连接。

您应该修改客户端应用程序,使其在不需要连接时关闭连接

让连接长时间开放通常会适得其反,这通常是一种(误导的、过早的)优化。它会引起问题,因为:

  • 连接不是无状态的,意外状态会导致问题
  • 连接会在一段时间后被服务器关闭,或者由于网络问题而关闭,从而导致“早起bug”

在一般情况下,最好在完成连接后立即关闭连接。

我认为“过程”和“连接”不是一回事。如果您正在创建连接,那么只有您知道它们何时不再使用。听起来您需要使用连接池。不需要时,您应该关闭连接。杀死进程不是一个好方法。有一种方法可以杀死未使用的mysql连接。就像服务器向mysql进程队列发送通知一样,若并没有任何确认返回到服务器,服务器将手动终止该进程。我并没有问过如何重新启动mysql。如果我们不关闭连接就离开连接,那么可能会有太多连接。