MySQL · 配置参数 · max_connections

参数说明

  • max_connections:MySQL 实例最大连接数。
  • Max_used_connections:是指从本次 MySQL 服务启动到现在,同一时刻并行连接数的最大值,不是指当前的连接情况,而是一个比较值。
Property Value
Command-Line Format --max-connections=#
System Variable max_connections
Scope Global
Dynamic Yes
Type Integer
Default Value 151
Minimum Value 1
Maximum Value 100000
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
mysql> show variables like "max_connections";
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 1000 |
+-----------------+-------+
1 row in set (0.00 sec)

mysql> show status like "max_used%";
+----------------------+-------+
| Variable_name | Value |
+----------------------+-------+
| Max_used_connections | 391 |
+----------------------+-------+
1 row in set (0.00 sec)

设置

推荐:如果设置太高硬件吃不消,太低又不能充分利用硬件,一般要求两者比值超过 10%

1
Max_used_connections / max_connections * 100%  > 10%

方法/etc/my.cnf 添加参数 max_connections = 1000,这个值的大小取决于服务器的配置。

其他

如果你看到数据库报 "Too many connections" 错误,是因为当前连接数超过 max_connections 设置的值,常见的原因是应用程序没有正确的关闭数据库连接,应用程序使用连接池有助于解决这一问题。