MySQLのrootユーザーでログインできなくなってしまったときの対処方法。
動作確認バージョン
MySQL 5.7.11
コマンドプロンプトを開き、MySQLのサービスを停止する。
1 |
$ net stop MySQL5 |
※サービス管理画面から停止をしても良い。
以下のコマンドを入力して、パスワード無しでログインできるようにMySQLを起動する。
1 |
$ mysqld -nt --skip-grant-tables |
※このコマンドを実行すると処理が進まなくなるが問題ない。(コマンドプロンプトがフリーズする)
新たにコマンドプロンプトを開いて、MySQLに接続してからパスワードを変更する。
1 |
mysql -u root mysql |
MySQLにログイン後、rootのパスワードを変更する。
1 2 3 4 5 |
> 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のプロセスを停止する。
1 2 3 |
$ askkill /im mysqld.exe /f $ net start MySQL5 |
サービスを再起動したらrootにログインできる。
プロセスの停止とサービスの再起動は、コンピュータを再起動することで自動的に行われます。