【问题标题】:Laravel API can't connect to dbLaravel API 无法连接到数据库
【发布时间】:2020-01-03 16:21:37
【问题描述】:

我正在尝试构建一个宁静的 API。

当我调用我的一个端点时,我收到以下错误消息:

SQLSTATE[HY000] [1045] 用户'root'@'localhost'的访问被拒绝(使用密码:NO)(SQL:select * from users

奇怪的是为什么当我尝试访问端点时出现此错误,但是当我使用 db:seed 时,数据库中填充了虚拟数据,我也可以使用迁移来创建表。

连接到数据库的用户拥有完全权限。

谁能帮帮我?

【问题讨论】:

  • 您最近是否更改了.env 文件中的数据库设置?那么也许旧的设置仍然被缓存用于网络请求。您可以尝试清除缓存和/或重新启动您的网络服务器以确保安全。
  • 是的,我试过了,但遗憾的是这对我没有用。

标签: php mysql laravel


【解决方案1】:

有时.env存档不会重新加载以进行更改...也许您需要运行命令php artisan config:cache

【讨论】:

    【解决方案2】:

    这是我在 .env 中的数据库设置:

    DB_CONNECTION=mysql
    DB_HOST=127.0.0.1
    DB_PORT=3306
    DB_DATABASE=homestead
    DB_USERNAME=root
    DB_PASSWORD=
    

    这是来自 database.php 的:

    'mysql' => [
            'driver' => 'mysql',
            'host' => env('DB_HOST', '127.0.0.1'),
            'port' => env('DB_PORT', '3306'),
            'database' => env('DB_DATABASE', 'homestead'),
            'username' => env('DB_USERNAME', 'root'),
            'password' => env('DB_PASSWORD', ''),
            'unix_socket' => env('DB_SOCKET', ''),
            'charset' => 'utf8mb4',
            'collation' => 'utf8mb4_unicode_ci',
            'prefix' => '',
            'strict' => true,
            'engine' => null,
    ],
    

    但据我了解,迁移、种子和 api 都通过 .env。

    【讨论】:

      猜你喜欢
      • 2013-12-18
      • 2017-11-21
      • 2021-04-21
      • 2014-07-28
      • 2017-01-27
      • 2021-10-14
      • 2020-02-28
      • 2019-08-17
      • 1970-01-01
      相关资源
      最近更新 更多