次のエラーが発生する場合
Found wrong password for user: 'some_user@some_host';
ignoring user
mysqld
が再起動されたとき、またはアクセス権テーブルが再ロードされたときに、user
テーブルに無効なパスワードのエントリが見つかったことを示しています。結果として、このエントリはアクセス権システムから無視されます。
この問題の考えられる原因と修正方法
旧 user
テーブルで新バージョンの
mysqld
を実行している可能性がある。
mysqlshow mysql user
を実行し、パスワードフィールドが 16
文字より短いかどうかを調べることによって、このことを確認できる。短い場合、scripts/add_long_password
スクリプトを実行して、この状態を修正できる。
ユーザのパスワードは旧パスワード(8
文字長)であるが、mysqld
が
--old-protocol
オプションで開始されなかった。
user
テーブルのユーザを新規パスワードで更新するか、mysqld
を --old-protocol
を指定して再起動する。
PASSWORD()
関数を使用せずに、user
テーブルにパスワードを指定した。mysql
を使用して user
テーブルのユーザを新規パスワードで更新する。このとき、必ず
PASSWORD()
関数を使用すること。
mysql>UPDATE user SET password=PASSWORD('your password')
->WHERE user='XXX';
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.