MySQL 限制每個使用者最大連線數


MySQL 的 max_connections 可以設定 MySQL 伺服器的最大連線數,但 max_connections 是針對整台 MySQL 伺服器,如果某一個 MySQL 帳號使用過多連線數,可以用以下方法限制每個使用者最大連線數,限止因為個別高用量使用者拖累其他使用者。

另一個設定參數是 max_user_connections,就可以設定每個使用者的連線數量限制, 以避免一個使用者的用量過高而影響整台 MySQL 伺服器的運作。一般上可以將 max_user_connections 設定成 max_connections 的一半數值, 例如 max_connections 是 1000, max_user_connections 可以設定成 500, 設定方法先開啟 my.cnf:

# vi /etc/my.cnf

在 [mysqld] 段落加上 max_user_connections 的設定, 例如:

上面設定了 max_connections 是 1000, max_user_connections 是 500.

儲存檔案後需要重新啟動 MySQL 才會生效:

# systemctl restart mysql

如果是 MariaDB, 要這樣重新啟動:

# systemctl restart mariadb

Leave a Reply