MySQL的最大连接数决定了数据库同一时间能够承载的客户端连接上限,当应用并发量较高时,了解这个配置值能帮助排查连接耗尽类的问题。在实际运维和开发场景中,查询最大连接数的操作非常常见,下面介绍几种可靠的查询方法。

通过SQL命令查询当前生效的最大连接数
MySQL将最大连接数存储在系统变量max_connections中,我们可以直接通过SQL语句查询这个变量的当前值,这种方式获取的是当前数据库实例正在使用的配置,不需要重启数据库就能看到最新生效的值。
登录到MySQL客户端后,执行以下SQL语句即可查询:
-- 查询最大连接数配置 SHOW VARIABLES LIKE 'max_connections';
执行后返回的结果中,Value列的值就是当前的最大连接数,默认情况下MySQL的初始最大连接数一般是151,部分定制版本可能会有不同默认值。
也可以使用SELECT语句直接查询变量值,这种方式可以更灵活地和其它查询结合使用:
-- 直接查询变量值 SELECT @@max_connections;
查询配置文件中的最大连接数设置
如果我们需要确认MySQL配置文件中永久设置的最大连接数,避免重启后配置丢失,可以查看MySQL的配置文件。不同系统下的配置文件路径不同:
- Linux系统一般在
/etc/my.cnf或者/etc/mysql/my.cnf - Windows系统一般在MySQL安装目录下的
my.ini文件
打开配置文件后,在[mysqld]段落下查找max_connections配置项,示例内容如下:
[mysqld] # 设置最大连接数为500 max_connections=500 port=3306 datadir=/var/lib/mysql
如果配置文件中没有这个配置项,说明使用的是MySQL的默认值,重启数据库后会恢复为默认的最大连接数。
区分最大连接数和当前连接数
很多用户会把最大连接数和当前已经建立的连接数混淆,这里需要明确两者的差异:
| 配置项 | 含义 | 查询方式 |
|---|---|---|
| 最大连接数 | 数据库允许的最大并发连接上限 | SHOW VARIABLES LIKE 'max_connections' |
| 当前连接数 | 当前已经建立的客户端连接数量 | SHOW STATUS LIKE 'Threads_connected' |
如果需要查询当前已经使用的连接数,可以执行以下SQL:
-- 查询当前连接数 SHOW STATUS LIKE 'Threads_connected';
临时修改最大连接数(可选操作)
如果查询到的最大连接数不满足当前业务需求,我们可以临时修改这个配置,修改后立刻生效,但重启数据库后会恢复为配置文件中的值:
-- 临时设置最大连接数为500,仅当前实例生效 SET GLOBAL max_connections = 500;
如果需要永久修改,还是要编辑配置文件,在[mysqld]下添加或修改max_connections的值,然后重启MySQL服务即可。
MySQL最大连接数max_connections数据库连接查询修改时间:2026-07-06 20:09:10