Mysql

我應該擔心程序列表中的mysql睡眠狀態程序嗎

  • January 31, 2022

在網站執行期間,在 mysql 程序列表中,我看到幾個程序的“命令”列標記為“SLEEP”。

我應該擔心嗎?如何阻止這種情況?

即使是我們中最強大的人有時也需要睡覺。沒有睡眠就會變得焦慮,失眠會導致各種嚴重的症狀。

更嚴重的是:睡眠狀態意味著 MySQL 程序已經完成了它的查詢,但是客戶端還沒有退出。許多 Web 應用程序在之後沒有清理它們的連接,這導致 MySQL 程序處於休眠狀態。如果只有少數,請不要擔心;MySQL 將在可配置的超時期限 (wait_timeout) 之後清理這些。

或者,如果您的 Web 應用程序使用持久連接和連接池,那麼即使有很多休眠程序也是完全正常的:在這種情況下,您的應用程序只會打開例如 100 個 SQL 連接並保持它們打開。這減少了連接打開/關閉的成本。除非您的應用程序非常繁忙,否則並非幾乎每個 SQL 程序都有事情要做是很正常的,因此它們會休眠。

引用自:https://serverfault.com/questions/281420