主要问题如题,环境如下:
OS: OS X 10.15.4
Laravel: 7.7.1
下列环境是在 laradock 中
MySQL: 8.0.19
使用搜索引擎搜到过有人出现过相关问题,对应答案有人建议修改.env
配置文件。 我进行测试后,修改配置文件可以影响php artisan migrate
所迁移的数据库,但使用 Eloquent 进行查询时还是提醒 coneection refused,.env
文件中相关配置应该是正确的。
刚开始学习 Laravel,还望各位大神能够点拨一二,提前谢谢了!
1 sleepm 2020-05-15 07:23:41 +08:00 via Android migrate 应该是用的 workspace 里的 php 执行的 使用模型去查询应该是走的 php-fpm 所以应该是 php-fpm 到 mysql 容器不通 |
![]() | 2 cnbattle 2020-05-15 08:04:17 +08:00 via Android .env 里 数据库 host 配置贴下,是容器名吗? |
![]() | 3 Dcynsd 2020-05-15 08:37:59 +08:00 ![]() `.env` 文件 `MYSQL_HOST` 是不是 容器名啊? |
4 cgpiao 2020-05-15 10:29:54 +08:00 可能是表名的问题,在 model 中设置表名再试试。 laravel 默认使用 model 的复数形式,你如果使用了单数的表名那就连不上。 还有一点如果有多个 schema,那每个 Model 都设置对应的 connection 。 |
5 dilu 2020-05-15 15:39:27 +08:00 host 从 localhost 改成 127 |
6 Sunxy88 OP |
![]() | 7 cnbattle 2020-05-15 23:46:53 +08:00 via Android ![]() 看下 mysql 容器名称,把 DB_HOST 改为其名称, 通过 docker-compose 编排的环境,相互访问我都是用对应的容器名,127.0.0.1 会请求本容器,不会请求到对应容器里 |