MySQLのrootユーザーでログインできなくなってしまったときの対処方法。
動作確認バージョン
MySQL 5.7.11
コマンドプロンプトを開き、MySQLのサービスを停止する。
※サービス管理画面から停止をしても良い。
以下のコマンドを入力して、パスワード無しでログインできるようにMySQLを起動する。
|
$ mysqld -nt --skip-grant-tables |
※このコマンドを実行すると処理が進まなくなるが問題ない。(コマンドプロンプトがフリーズする)
新たにコマンドプロンプトを開いて、MySQLに接続してからパスワードを変更する。
MySQLにログイン後、rootのパスワードを変更する。
|
> update user set authentication_string=password("パスワード") where user='root'; Query OK, 1 row affected, 1 warning (0.00 sec) Rows matched: 1 Changed: 1 Warnings: 1 > exit |
password(“パスワード”)の””で囲われた部分が実際に設定されるパスワードです。
任意のパスワードを入力して実行して下さい。
変更が完了したら、コンピュータを再起動するか、MySQLのプロセスを停止してサービスを起動して下さい。
MySQLのプロセスを停止する。
|
$ askkill /im mysqld.exe /f $ net start MySQL5 |
サービスを再起動したらrootにログインできる。
プロセスの停止とサービスの再起動は、コンピュータを再起動することで自動的に行われます。