多个长时间运行的 mysqld 进程

多个长时间运行的 mysqld 进程

今天我用 htop 检查了我们的服务器状态,看到了一些令人难以置信的事情。

有人可以回答我以下问题吗?

  1. 为什么有这么多mysqld进程?
  2. 他们为什么跑了这么长时间?

在此服务器上,我们有一个 plesk 系统,其中运行了 3 个 PHP Symfony 项目。只有 1 个项目有负载。

该服务器有 12 个核心和 126GB RAM(专用)

顶部

答案1

这很正常。

您可能有max_connections = 151,这是某些版本中的默认设置。这意味着 MySQL 最多可能正在运行 151 个线程/进程。它们可能只是待在那里,什么也不做,等待需要某些操作时被唤醒。

该设置可以降低,但除非您的 RAM 不足,否则没有必要这样做。但我对此表示严重怀疑,因为您的 RAM 非常大,为 128GB。

每个进程的“时间”是指进程启动的时间。这也是不必担心的事情。

有些操作系统只显示一行mysqld,有些操作系统则显示每个线程/进程一行。这种差异不是问题。

htop后面有一个 ,Load average后面跟着 3 个数字?(就像 一样top)有哪些值?“1”或“2”可能表示系统空闲程度合理。“12”或更多可能表示某些查询受 CPU 限制。

在我看来,MySQL 的“slowlog”对于追踪恶意查询很有用。

相关内容