root以外のユーザーを作ってデータベースを操作しようと思ったら「SQLSTATE[HY000] [1045] Access denied for user」
原因はmysqlにログイン出来なかったとか、そんな感じ。
疑う箇所を以下に列挙する。
対象のデータベースとアカウント名とパスワードは間違ってないか?
まぁ基本。
タイポをやりがちなので、コピペしましょう。
アカウントに権限は与えられているか?
権限が無いとアカウントはデータベースの操作をすることが出来ない。
やりたいことと与えている権限がすれ違っていたり
操作できるデータベースが違ったりしないか確認する。
アカウントのHostはあっているか?
Laravelの.envのDB設定の初期値は「127.0.0.1」である。
アカウントのHostがコレと違うと、エラーが出る。
アカウントのHostを127.0.0.1に変えるか、%に変えるか
DBの設定をアカウントに合わせるかしないといけない。
今回の僕の現象
以上の事を確認しても、正常だし、権限も与えているのになぜかエラーを吐く…
という人は
.envのDB設定の「DB_PASSWORD」の値を""で囲ってみると良いかもしれない。
僕はコレで治った…。こんなことでハマるとは…くっ!