環境
- Ubuntu 18.04(WSL)
- Larave5.8
- PHP7.2
- MySQL5.7
.env
DB_DATABASE=laravel58
DB_USERNAME=root
DB_PASSWORD=
bash
php artisan migrate --seed
これをやると次のエラーが出ました。
Illuminate\Database\QueryException : SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost' (SQL: select * from information_schema.tables where table_schema = larave58 and table_name = migrations and table_type = 'BASE TABLE')
調べてる見ると
Turns out you can't use the root user in 5.7 anymore without becoming a sudoer. That means you can't just run mysql -u root anymore and have to do sudo mysql -u root instead.
引用元:SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost'
mysql5.7はsudoじゃないとrootでログインできないようです。
なのでUbuntuにphpmyadminをインストールした時に作ったphpmyadminというアカウントに権限を与えることにしました。
mysql
GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
.envを修正
.env
DB_DATABASE=laravel58
DB_USERNAME=phpmyadmin
DB_PASSWORD=password
これでできました。