max_connections 是指整個mysql服務器的最大連接數;
max_user_connections 是指每個數據庫用戶的最大連接數,比如:虛擬主機可以用這個參數控制每個虛擬主機用戶的數據庫最大連接數;
MySQL服務器的連接數並不是要達到最大的100%為好,還是要具體問題具體分析,下面就對MySQL服務器最大連接數的合理設置進行了詳盡的分析,供您參考。
我們經常會遇見“MySQL: ERROR 1040: Too many connections”的情況,一種是訪問量確實很高,MySQL服務器抗不住,這個時候就要考慮增加從服務器分散讀壓力,另外一種情況是MySQL配置文件中max_connections值過小:
mysql> show variables like 'max_connections'; +-----------------+-------+ | Variable_name | Value | +-----------------+-------+ | max_connections | 256 | +-----------------+-------+
這台MySQL服務器最大連接數是256,然后查詢一下服務器響應的最大連接數:
mysql> show global status like 'Max_used_connections';
MySQL服務器響應的最大連接數是245,沒有達到服務器連接數上限256,應該不會出現1040錯誤,比較理想的設置是:
Max_used_connections / max_connections * 100% ≈ 85%
響應連接數占上限連接數的85%左右,如果發現比例在10%以下,MySQL服務器連接上線就設置得過高了。