You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac OS El Capitan下无法同时建立多个MySQL连接求助

解决Mac OS El Capitan下无法同时建立多个MySQL连接的问题

我在El Capitan上维护MySQL时也碰到过一模一样的问题,这种双向互斥的连接限制大概率是配置或连接协议的问题,给你一步步排查和解决的方案:

第一步:排查用户连接数限制

先关掉所有当前的MySQL连接(比如关闭Sequel Pro、终止终端里的MySQL进程),然后用终端登录MySQL:

mysql -u your_username -p

登录后执行以下命令查看关键配置:

-- 查看单个用户允许的最大连接数
SHOW VARIABLES LIKE 'max_user_connections';
-- 查看全局最大连接数
SHOW VARIABLES LIKE 'max_connections';

如果max_user_connections的返回值是1,那这就是问题根源——你的MySQL被配置成每个用户只能建立1个连接,自然无法同时用多个客户端连接。

第二步:修改MySQL配置文件

根据你的MySQL安装方式找到配置文件:

  • 官方安装包:配置文件通常在/etc/my.cnf或/usr/local/mysql/my.cnf
  • Homebrew安装:配置文件在/usr/local/etc/my.cnf

用sudo权限打开配置文件,添加或修改以下内容:

# 设置单个用户允许的最大连接数,按需调整,比如100
max_user_connections = 100
# 全局最大连接数,建议比单用户值高,比如200
max_connections = 200

保存后重启MySQL服务:

  • 官方安装包版本:
sudo /usr/local/mysql/support-files/mysql.server restart
  • Homebrew版本:
brew services restart mysql

第三步:统一连接协议(如果配置调整无效)

如果上面的操作没解决问题,可能是客户端连接协议不一致导致的:

  • Sequel Pro默认可能用Unix套接字连接,而终端/网站用TCP/IP连接
  • 尝试统一连接方式:
    1. 在Sequel Pro的连接设置里,选择「Socket」选项,指定套接字路径(通常是/tmp/mysql.sock)
    2. 终端连接时显式指定套接字:
    mysql -u your_username -p --socket=/tmp/mysql.sock
    

第四步:查看错误日志定位细节

如果还是有问题,去MySQL错误日志里找线索,日志位置一般在/usr/local/mysql/data/[你的主机名].err,搜索Lost connection相关条目,里面会有更具体的错误原因(比如权限、端口占用等)。

内容的提问来源于stack exchange,提问作者Xus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:30:39