Categories: MySQL

MySQL ユーザーのパスワード変更でエラーがでる

MySQLで、パスワードを変更しようかと、SET PASSWORD を実行しようとすると、エラーが。

 

mysql> SET PASSWORD FOR test@localhost = PASSWORD('password');

ERROR 1133 (42000): Can't find any matching row in the user table

マッチする行がないとかいわれても、何度見返してもちゃんと、test@localhostはuserテーブルに存在してるし。

そんなときは、 GRANTのあとに FLUSH PRIVILEGES を入れていないからかもしれません。

mysql> FLUSH PRIVILEGES;

としてみるといいらしい。

mysql> grant all on *.* to test@localhost identified by 'password';
Query OK, 0 rows affected (0.00 sec) 
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
nakaike

Share
Published by
nakaike