xampp MySQLのrootユーザのパスワードを変更したらログインできなくなった


rootユーザでログインできなくなった

Windowsでxamppをインストール後、MySQLのrootユーザのパスワードを変更したらログインできなくなりました。(xamppのShell実行、MySQLのAdminボタン経由ともにログインできず)

mysqladmin password newpassword -u root -p

上記のコマンドでパスワード変更したことがよくなかったようです。
パスワード変更後、ログインしたら以下のようなエラーが...

mysql -h localhost -u root -p

ERROR 1130 (HY000):Host 'localhost' is not allowed to connect to this MySQL server

MySQLのリファレンスによると

Windows では、ローカルホストからの接続のみを許可する root アカウントが作成されます。
ホスト名 localhost、IP アドレス 127.0.0.1、または IPv6 アドレス ::1 を指定することで接続できます。
ホスト 127.0.0.1 への接続を試みると、通常 localhost アカウントに解決します。
(MySQLリファレンスより引用)

mysql> SELECT host,user,password From mysql.user;
...

| host             | user              | password           |
|------------------|-------------------|--------------------|
| localhost        | root              |                    |
| 127.0.0.1        | root              |                    |
| ::1              | root              |                    |

解決方法

MyQSQLログイン後、以下の方法でパスワードを変更。

ALTER USER 'root'@'localhost' identified BY 'パスワード';