【问题标题】:Illuminate\Database\QueryException : SQLSTATE[HY000] [2002] Connection refused default character set utf8mb4 collate utf8mb4_unicode_ciIlluminate\Database\QueryException : SQLSTATE[HY000] [2002] 连接被拒绝默认字符集 utf8mb4 collat​​e utf8mb4_unicode_ci
【发布时间】:2018-10-06 03:47:30
【问题描述】:

我对工匠和迁移有疑问。

我刚刚创建了一个新项目,使用Laravel Schema Design 复制粘贴我的数据库,将schemaLenght 放入我的config/database.php 文件中。然后我让 php artisan 迁移,我得到了这个错误:

SQLSTATE[HY000] [2002] 连接被拒绝(SQL:select * from information_schema.tables where table_schema = table_atelier and table_name = migrations)。

那么,我想知道,问题是什么?

我想,可能是 MAMP 的新版本,我升级了它。或者,也许是 php 版本(我有 7.1.127.2.1)。

【问题讨论】:

    标签: php mysql laravel laravel-5 laravel-artisan


    【解决方案1】:

    您的凭据有问题。 您是否在 .env 中使用了正确的凭据?

    【讨论】:

    • DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=我的表 DB_USERNAME=root DB_PASSWORD=root
    • 你的数据库叫做“我的表”?
    • table_atelier 是你的数据库名还是表名? DB_DATABASE= 应该包含您的数据库的名称
    • 我有 DB_DATABASE=table_atelier ;这是我在 mysql 中的数据库的名称。
    • 所以你改了?现在运行 php artisan config:cache 并重试。
    【解决方案2】:

    那是因为 NO_AUTO_CREATE_USER (sql-mode) 在 mysql 8 中被删除了,https://dev.mysql.com/doc/refman/8.0/en/mysql-nutshell.html#mysql-nutshell-removals

    文件已被 Laravel 创建者formmating commit修改

    return "set session sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'";
    

    【讨论】:

      猜你喜欢
      • 2022-06-13
      • 2021-07-10
      • 2022-08-05
      • 2017-05-04
      • 2020-01-22
      • 2017-09-20
      • 2020-03-26
      • 2020-12-04
      • 2020-02-27
      相关资源
      最近更新 更多