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

Laravel Homestead环境下无法通过MySQL Workbench访问数据库求助

解决Laravel Homestead下MySQL Workbench无法连接数据库的问题

我来帮你一步步排查这个连接问题,咱们从最常见的原因开始:

1. 确认端口映射的正确性

Laravel Homestead默认会把虚拟机内的MySQL 3306端口映射到本地的33060端口,所以你在MySQL Workbench里连接时,端口必须填33060,而不是虚拟机内的3306。主机地址用127.0.0.1是没问题的。

2. 检查MySQL用户的远程访问权限

虚拟机内的root用户默认可能只允许本地(localhost)访问,没有授权远程连接。你可以登录到虚拟机的MySQL里,执行以下命令开放权限:

GRANT ALL PRIVILEGES ON bacon.* TO 'root'@'%' IDENTIFIED BY 'secret';
FLUSH PRIVILEGES;

这里的%表示允许从任何IP地址访问bacon数据库,执行完后记得刷新权限。

3. 匹配Workbench连接参数与.env配置

确保MySQL Workbench里的连接参数和你的配置完全一致:

  • 主机名:127.0.0.1
  • 端口:33060
  • 用户名:root
  • 密码:secret
  • 默认数据库:bacon

4. 排查Windows防火墙干扰

Win10的防火墙可能会阻止33060端口的外来连接,你可以临时关闭防火墙测试一下,如果能连接成功,就需要在防火墙里添加一条允许MySQL Workbench访问33060端口的入站规则。

5. 备选方案:使用SSH隧道连接

如果上面的方法都不行,推荐用SSH隧道的方式连接,这种方式更稳定且无需担心端口映射问题:

  • 在MySQL Workbench新建连接,选择Standard TCP/IP over SSH类型
  • SSH主机:192.168.10.10(Homestead虚拟机的IP)
  • SSH用户名:vagrant
  • SSH密码:vagrant(或者选择使用私钥,路径一般是C:\Users\你的用户名\.ssh\id_rsa)
  • MySQL主机名:127.0.0.1(虚拟机内的本地地址)
  • MySQL端口:3306
  • 用户名:root,密码:secret

按照以上步骤操作,应该就能成功连接到bacon数据库了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 07:42:13