[MySQL]rootでログインできない場合の対処法

自サーバーに設置してあるMySQLに久々に接続を試みたところ、

こんな感じで接続できなくなっていた。
パスワードを忘れた場合も含み、rootユーザーで接続できない場合の復旧方法を残しておく。

セーフモードで起動する

まずは起動中のMySQLを停止する。

停止後、セーフモードでMySQLサーバーを起動する。

rootユーザーでMySQLにログイン

rootユーザーのpasswordを変更する

ログインできたら、mysqlデータベースを指定する。

ここで注意が必要なのが、調べたところmysql.userテーブルのpasswordをupdateして変更する方法が書かれていたが、我々が使っているMySQLのversion5.7.17では以下の通りpasswordカラムが存在しない。

どうやら、以前のversionではpasswordだったカラムが、最近のversionではauthentication_stringに変更されているようだ。
なのでrootユーザーのauthentication_stringカラムをupdate文で変更しよう。

passwordの変更が完了したら、exitでMySQLサーバーから抜ける。

MySQLサーバーを通常モードで起動

先ほどセーフモードで起動したMySQLサーバーを停止し、通常モードで起動する。

設定したパスワードで接続できるかを確認

無事接続出来たら、作業完了。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

コメント

  1. […] / リセット方法 [MySQL]rootでログインできない場合の対処法 […]