跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • Laravel 框架能够正常地使用 PHP artisan migrate 进行迁移,但是利用 Eloquent 模型访问数据库时提示 connection refused
未分類
17 5 月 2020

Laravel 框架能够正常地使用 PHP artisan migrate 进行迁移,但是利用 Eloquent 模型访问数据库时提示 connection refused

Laravel 框架能够正常地使用 PHP artisan migrate 进行迁移,但是利用 Eloquent 模型访问数据库时提示 connection refused

資深大佬 : Sunxy88 0

主要问题如题,环境如下:

OS: OS X 10.15.4

Laravel: 7.7.1

下列环境是在 laradock 中

MySQL: 8.0.19

使用搜索引擎搜到过有人出现过相关问题,对应答案有人建议修改.env配置文件。 我进行测试后,修改配置文件可以影响php artisan migrate所迁移的数据库,但使用 Eloquent 进行查询时还是提醒 coneection refused,.env文件中相关配置应该是正确的。

刚开始学习 Laravel,还望各位大神能够点拨一二,提前谢谢了!

大佬有話說 (8)

  • 資深大佬 : sleepm

    migrate 应该是用的 workspace 里的 php 执行的
    使用模型去查询应该是走的 php-fpm
    所以应该是 php-fpm 到 mysql 容器不通

  • 資深大佬 : cnbattle

    .env 里 数据库 host 配置贴下,是容器名吗?

  • 資深大佬 : Dcynsd

    `.env` 文件 `MYSQL_HOST` 是不是 容器名啊?

  • 資深大佬 : cgpiao

    可能是表名的问题,在 model 中设置表名再试试。
    laravel 默认使用 model 的复数形式,你如果使用了单数的表名那就连不上。
    还有一点如果有多个 schema,那每个 Model 都设置对应的 connection 。

  • 資深大佬 : dilu

    host 从 localhost 改成 127

  • 主 資深大佬 : Sunxy88

    @cnbattle
    @Dcynsd
    @dilu
    感谢回复,.env 配置如下:
    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=default
    DB_USERNAME=root
    DB_PASSWORD=root

    @cgpiao
    model 内设置的表名因该是正确的,但是我无法判断连接是不是对的。但是没有配置多个连接,应该使用的是默认的连接吧。

  • 資深大佬 : cnbattle

    看下 mysql 容器名称,把 DB_HOST 改为其名称,
    通过 docker-compose 编排的环境,相互访问我都是用对应的容器名,127.0.0.1 会请求本容器,不会请求到对应容器里

  • 主 資深大佬 : Sunxy88

    @cnbattle 十分感谢您,问题解决了!鞠躬!

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具