使用MySQL Workbench连接MAMP中MySQL出现8888端口连接失败问题
MAMP环境下MySQL Workbench连接失败排查解决方案
触发的报错信息如下:
Failed to Connect to MySQL at localhost:8888 with user root I have put the username "root" and no password. Hostname:localhost Port:8888
按以下优先级逐一排查解决:
- 第一步:确认MAMP运行状态与端口配置
先打开MAMP控制面板,确认MySQL服务状态灯为绿色(已启动),再进入「偏好设置→端口」标签页,核对MySQL端口确实为8888,未被手动修改。 - 第二步:核对root账号默认密码
MAMP默认安装后root账号的默认密码为root,而非空密码,可先在连接配置的密码栏输入root尝试重连。如果需要使用空密码,可先通过MAMP自带的phpMyAdmin登录后,在用户管理页修改root@localhost的密码为空。 - 第三步:修正连接协议配置
MySQL Workbench连接localhost时默认会优先使用本地套接字,而非TCP/IP协议,会导致端口配置不生效。可打开连接配置页,将「连接方法」修改为TCP/IP,再保存重试。如果要使用本地套接字连接,需要手动填写MAMP的套接字路径:/Applications/MAMP/tmp/mysql/mysql.sock。 - 第四步:排查端口占用与防火墙拦截
打开系统终端执行命令sudo lsof -i :8888,查看返回结果中的进程是否为mysqld,确认端口没有被其他程序占用。同时检查macOS系统防火墙设置,确认没有阻止MySQL Workbench的网络请求。 - 第五步:重置root账号权限与密码(以上步骤无效时使用)
- 停止MAMP的MySQL服务
- 终端执行命令启动安全模式MySQL:
/Applications/MAMP/Library/bin/mysqld_safe --skip-grant-tables --skip-networking & - 新开终端执行命令登录MySQL:
/Applications/MAMP/Library/bin/mysql -u root - 执行SQL修改密码并刷新权限:
ALTER USER 'root'@'localhost' IDENTIFIED BY ''; FLUSH PRIVILEGES; - 关闭安全模式MySQL,重启MAMP的MySQL服务后重新连接即可。
内容的提问来源于stack exchange,提问作者Parsa Khodadadi
相关产品推荐
相关产品推荐

