Closed1

MySQL(8.x)のパスワードを忘れた時

atnuhsatnuhs

久しぶりにMySQLを使おうとした時にパスワードを忘れていてログインできなかったため、パスワードをリセットする方法を残しておく

方法

  1. MySQLを止める

    mysql.server stop
    
  2. MySQLをセーフモードで起動する

    mysqld_safe --skip-grant-tables &
    
  3. rootユーザのパスワードなし状態でログインする
    実行すると、MySQLコマンドラインクライアントが立ち上がる

    mysql -u root
    
  4. SQLシェルでrootユーザーのパスワードを空に設定する

    UPDATE mysql.user SET authentication_string=null WHERE User='root';
    
  5. セーフモードで起動したMySQLを閉じる

    exit
    
  6. プロセスを終了させないといけないかも
    PID(プロセスID)を確認して終了させる

    mysql.server status
    > SUCCESS! MySQL running (XXXXX)
    kill XXXXX 
    
  7. 通常モードでMySQLを起動する

    mysql.sever restart
    
  8. ログインする
    コマンドを実行した後パスワードが求められるが、何も入力せずにEnterを押下する

    mysql -u root -p 
    
  9. パスワードを再設定する

    USE mysql;
    ALTER USER 'root'@'localhost' identified BY '<パスワード>';
    
  10. SQLシェルを抜ける

    exit
    
  11. 再設定したパスワードを入力してログインできるか確認する

mysql -u root -p

SQLシェルが起動すれば成功

このスクラップは2ヶ月前にクローズされました