【问题标题】:php artisan migrate - Error - Illuminate\Database\QueryException : SQLSTATE[HY000] [2054]php artisan migrate - 错误 - Illuminate\Database\QueryException:SQLSTATE[HY000] [2054]
【发布时间】:2018-12-17 08:25:44
【问题描述】:

我在做的时候有以下错误:

php artisan migrate

错误:

Illuminate\Database\QueryException : SQLSTATE[HY000] [2054] 服务器请求客户端未知的身份验证方法(SQL: select * from information_schema.tables where table_schema = d1 and table_name = migrations)

这是截图;

PS。以防万一:我在 php.ini 文件中启用了“extension=pdo_mysql”。

任何想法如何解决这个问题?

【问题讨论】:

标签: php laravel-artisan migrate


【解决方案1】:

你好,正如这篇文章中提到的:

Laravel-news

这是一个典型的 windows 问题。

提到的解决方案是:

use Illuminate\Support\Facades\Schema;

public function boot()
{
    Schema::defaultStringLength(191);
}

在 AppServiceProvider.php 中

【讨论】:

    【解决方案2】:

    我也被这个问题困扰了很长时间。 对我有用的一种解决方案是打开 Connection.php 并注释掉异常或替换这些异常,以便php migrate 时不会出现错误 正在运行。这对我有用。如果您发现任何其他解决方案/任何更改,请告诉我。

    或者,也许是更好的解决方案:

    在 app/config 下的 database.php 中,添加以下内容:

    'connections' => [
    
        'mysql' => [
            'driver'      => 'mysql',
            'host'        => env( 'DB_HOST', '127.0.0.1' ),
            'port'        => env( 'DB_PORT', '3306' ),
            'database'    => env( 'DB_DATABASE', 'forge' ),
            'username'    => env( 'DB_USERNAME', 'forge' ),
            'password'    => env( 'DB_PASSWORD', '' ),
            'unix_socket' => env( 'DB_SOCKET', '' ),
            'charset'     => 'utf8mb4',
            'collation'   => 'utf8mb4_unicode_ci',
            'prefix'      => '',
            'strict'      => true,
            'engine'      => null,
            'modes'       => [
                'ONLY_FULL_GROUP_BY',
                'STRICT_TRANS_TABLES',
                'NO_ZERO_IN_DATE',
                'NO_ZERO_DATE',
                'ERROR_FOR_DIVISION_BY_ZERO',
                'NO_ENGINE_SUBSTITUTION',
            ],
        ],
    ],
    

    【讨论】:

      【解决方案3】:

      如果你使用Macos+docker+mysql。然后用这个

       ./vendor/bin/sail artisan migrate
      

      不是 php artisan 迁移

      【讨论】:

      • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
      【解决方案4】:

      也一直在努力解决这个问题。我认为最好先删除然后再次迁移表,然后再添加新表或对迁移文件夹进行任何更改。我希望这能解决你的问题..

      php artisan migrate:fresh
      

      【讨论】:

        猜你喜欢
        • 2021-01-05
        • 2018-11-12
        • 1970-01-01
        • 2020-03-23
        • 2020-04-19
        • 2020-01-20
        • 2021-12-11
        • 1970-01-01
        • 2020-04-14
        相关资源
        最近更新 更多