解決 Access denied for user ‘root’@’localhost’ (using password: NO)

Laravelでphp artisan migrateやると、 SQLSTATE[HY000] [1045] Access denied for user ‘root’@’localhost’ (using password: NO) (SQL: select * from information_schema.tables where table_schema = laravelDB and table_name = migrations and table_type = ‘BASE TABLE’)が出たときにやったこと

そもそも、sudo mysqlとやらないと立ち上がらない。

1. rootではなく、newuserを作成

MySQLにsudo mysqlでログインして

>CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
>GRANT ALL PRIVILEGES ON laravelDB.* TO 'newuser'@'localhost';

とする。

Connect to mysql server without sudo – Stack Overflow

2. Laravelの.envファイルについて

DB_DATABASE=laravelDB
DB_USERNAME=newuser
DB_PASSWORD=password

を設定

これでOK.