env 中的 Laravel 连接到 mysql 工作台

问题描述

我更改了连接数据库 MysqL 服务器工作台的配置,我在 .env 中输入了主机、用户名密码,但出现错误 sqlSTATE[HY000] [1045] 用户访问被拒绝

但是我已经在config/database.PHP中输入连接成功

我的 .env 文件包含:

DB_CONNECTION=MysqL 
DB_HOST=0.0.0.0 
DB_PORT=3306 
DB_DATABASE=xxxx 
DB_USERNAME=xxxx 
DB_PASSWORD=xxxxxx

我的 config/database.PHP 是:

    'MysqL' => [
            'driver' => 'MysqL','url' => env('DATABASE_URL'),'host' => env('DB_HOST','localhost'),'port' => env('DB_PORT','3306'),'database' => env('DB_DATABASE','forge'),'username' => env('DB_USERNAME','password' => env('DB_PASSWORD',''),'unix_socket' => env('DB_SOCKET','charset' => 'utf8mb4','collation' => 'utf8mb4_unicode_ci','prefix' => '','prefix_indexes' => true,'strict' => false,'engine' => null,'options' => extension_loaded('pdo_MysqL') ? array_filter([
                PDO::MysqL_ATTR_SSL_CA => env('MysqL_ATTR_SSL_CA'),]) : [],],

在 dabase.PHP 中,我删除了 env 并输入了此代码连接成功的连接

解决方法

'mysql' => [
        'driver' => 'mysql','url' => env('DATABASE_URL'),'host' => env('DB_HOST','localhost'),'port' => env('DB_PORT','3306'),'database' => env('DB_DATABASE','forge'),'username' => env('DB_USERNAME','password' => env('DB_PASSWORD',''),'unix_socket' => env('DB_SOCKET','charset' => 'utf8mb4','collation' => 'utf8mb4_unicode_ci','prefix' => '','prefix_indexes' => true,'strict' => false,'engine' => null,'options' => extension_loaded('pdo_mysql') ? array_filter([
            PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),]) : [],],

在 dabase.php 中,我删除了 env 并输入了此代码连接成功的连接