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

プログラミング

こんにちは。KATUOです。今回は「Access denied for user ‘root’@’localhost’ (using password: YES)」の解決方法について紹介していこうと思います。

 

ひたすら苦しんでおります。笑

 

原因を調査してみる

 

一旦コンテナを削除してみる

gitのissueで以下のようなコメントが書かれていました。

 

The error usually means the password supplied is incorrect.
Did you start the container in any particular way, or just as specified in the documentation?

 

これを読むとこのエラーは大抵はパスワードが間違っていることによって起こるエラーらしいです。しかし自分の入力したパスワードは間違ってないので

これは原因ではなさそう。

 

Volumeを削除する必要がある?

 

The command docker-compose rm -v reflects in the containers, but NOT in the volume mapped. So, the following command will remove the containers and since it doesn’t delete the volumes, the command files to create a new user.

 

docker-compose rm -vでcontainerを削除することを推奨している方が他にいたみたいですが、これだとマッピングされたvolumeは削除できないので以下のコマンドを打つことで一度生成したデータを削除することができるようです。

 

 

これでも治らす。

 

超初歩的なミスをしていた

何が違うんだろうとdocker-compose.ymlをもう一度確認してみました。

 

 

あれ、パスワードって「root」と「docker」の2つがある。自分はroot権限でログインしようとしているのに「docker」のパスワードを使っていました。「root」のパスワードを使うと無事ログインできました。時間返してほしい。笑

 

 

参考サイト

Cannot connect to mysql database: Access denied · Issue #51 · docker-library/mysql · GitHub
タイトルとURLをコピーしました