コマンドFLUSH PRIVILEGES
を試してください MySQLターミナルにログインしたとき。それでも問題が解決しない場合は、MySQLターミナルで次の一連のコマンドを試してください
$ mysql -u root
mysql> USE mysql;
mysql> UPDATE user SET password=PASSWORD("NEWPASSWORD") WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
NEWPASSWORDを任意のパスワードに変更します。すべて設定する必要があります!
更新 :MySQL 5.7以降、password
フィールドの名前がauthentication_string
に変更されました 。パスワードを変更する場合は、次のクエリを使用してパスワードを変更してください。他のすべてのコマンドは同じままです:
mysql> UPDATE user SET authentication_string=PASSWORD("NEWPASSWORD") WHERE User='root';
更新 :8.0.15(おそらくそのバージョンより前)では、以下のコメントに記載されているように、PASSWORD()関数は機能しません。使用する必要があります:
UPDATE mysql.user SET authentication_string='password' WHERE User='root';