laravelでMySQLに接続する時にエラーが出ました。
txt
1Illuminate \ Database \ QueryException (2054) 2SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client (SQL: SELECT column_1, column_2 FROM sampletable)
ネットで調べたところ認証方式を切り替えればOKということだったのですが、認証方式を切り替えてもエラーが出ました。
laravelのdatabase.phpのmysqlの部分
php
1 2 'mysql' => [ 3 'driver' => 'mysql', 4 'url' => env('localhost'), //Mysql@localhost:3306 5 'host' => env('DB_HOST' , 'localhost'), 6 'port' => env('DB_PORT' , '3306' ), 7 'database' => env('DB_DATABASE', 'sample' ), 8 'username' => env('DB_USERNAME', 'root' ), 9 'password' => env('DB_PASSWORD', 'pass' ), 10 'unix_socket' => env('DB_SOCKET' , '' ), 11 'charset' => 'utf8mb4', 12 'collation' => 'utf8mb4_unicode_ci', 13 'prefix' => '', 14 'prefix_indexes' => true, 15 'strict' => true, 16 'engine' => null, 17 'options' => extension_loaded('pdo_mysql') ? array_filter([ 18 PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'), 19 ]) : [], 20 ], 21
一応、ユーザrootの認証方式は切り替えてあります。
他の原因が分からないのですが、どなたかお分かりの方、いらっしゃるでしょうか。
追記
ヴァージョン情報
Laravel Framework 5.8.33
MySQL : 8.0
PHP : 7
回答2件
あなたの回答
tips
プレビュー