MySQLのAccess deniedエラー
ごく初歩的なミスで起こる、以下のMySQL接続時エラー。
ERROR 1045 (28000): Access denied for use ‘user01′@localhost’ (using password: YES)
パスワードオプションの-pが抜けていたり、パスワードが間違っていたり、大体そんなもの
が原因だが、ユーザを作成する際のコマンドがちょっとおかしい、という原因もあるようだ。
rootで入ってユーザテーブルを確認してみたのだが、ユーザはちゃんといる。
パスワードも合っているはず。おかしいなぁ。。
でもユーザ作成時に実行したコマンドをよく見たら、スペースが入るべき箇所にスペース
が入っていなかった。こんなことが原因なのかは「?」ではあるが、面倒くさいので
ユーザを一度削除して、また作り直した。今度はOK。
その翌日。作成したユーザにてLOAD DATE INFILEコマンドでテキストデータをDBの
テーブルにインサートしようとしたら、また同じエラーが。
“Access denied”なんて言われるとついパーミッションの問題かと思ってしまい、ファイル
のオーナーやパーミッションを変更してみたり、、、
うーむ、でもOSのパーミッションとMySQLユーザは関係ないはず。
同じことをrootで実行したらOKだったので、MySQL一般ユーザにLOAD DATEの権限が
なかった(与えていなかった)ってことかな。多分。
あぁぁ、こんなことにハマっている場合じゃないのに、、、、