Laravel .env DB_HOST 127.0.0.1 与 localhost

Posted

技术标签:

【中文标题】Laravel .env DB_HOST 127.0.0.1 与 localhost【英文标题】:Laravel .env DB_HOST 127.0.0.1 vs localhost 【发布时间】:2018-06-28 19:56:34 【问题描述】:

我对 Laravel 环境文件中的 DB_HOST 变量感到困惑。 localhost127.0.0.1 似乎都没有完全工作。

如果主机设置为127.0.0.1,当我尝试在 Laravel 中运行查询时,它会返回错误:

SQLSTATE[HY000] [2002] 连接被拒绝(SQL: select * from users where email = email address limit 1)

然而,如果我使用localhost,它可以正常连接。

但是,当DB_HOST 变量设置为localhost,并且我尝试运行迁移或种子时,我会收到以下错误:

SQLSTATE[HY000] [2002] Connection denied (SQL: select * from information_schema.tables where table_schema = projectmanage and table_name = 迁移)

然而,如果我使用 DB_HOST 127.0.0.1,它可以很好地迁移/播种。

发生了什么事?

我目前正在安装 Laravel 5.5。

【问题讨论】:

【参考方案1】:

您可能有一个可以使用 localhost 而不是 127.0.0.1 登录的数据库用户。检查 mysql.users 表进行验证。您可以为 127.0.0.1 添加一个条目以连接其中一个。

【讨论】:

以上是关于Laravel .env DB_HOST 127.0.0.1 与 localhost的主要内容,如果未能解决你的问题,请参考以下文章

laravel 中 .env 文件中的 localhost vs 127.0.0.1

如何在 Laravel 中获取当前查询 DB_HOST 值

laravel连接数据库

通过 SSL 与 Laravel 的 MySQL 连接

如何在 Laravel 中加入来自不同主机的多个数据库

laravel 的.env 配置文件