2024-03-19|閱讀時間 ‧ 約 22 分鐘

[MySQL] 忘記密碼時重置密碼及修改密碼

此文章同步刊登於我的部落格

如果MySQL忘記密碼,可以使用修改cnf檔案免去登入驗證,再進入MySQL重新設定密碼的方式,找回密碼,另外還附上有一般修改密碼的方式。


重置密碼

  1. 使用指令找到MySQL讀取的my.cnf檔案路徑:
    mysql --help | grep 'Default options' -A 1


  1. 編輯my.cnf
    vim <檔案路徑>
    在[mysqld]標籤底下加入 skip-grant-tables


  1. 使用指令重啟資料庫
    service mysql restart
  2. 登入MySQL(直接輸入Enter不需要打密碼),並使用以下指令
    use mysql;
    update user set authentication_string = '' where user = 'root';
    FLUSH PRIVILEGES;
    EXIT
  3. 重新編輯my.cnf,並將剛剛加入的skip-grant-tables 移除
  4. 再次重啟資料庫
  5. 即可使用空字串作為密碼進行登入


修改密碼

修改密碼相當簡單,使用有權限的帳號登入MySQL後,使用以下指令:

use mysql;
SELECT * FROM user WHERE user LIKE 'root%' \G;
ALTER USER root@localhost IDENTIFIED WITH mysql_native_password BY 'newPassword';
FLUSH PRIVILEGES;
EXIT


環境:

  • Ubuntu 16.04.6 LTS
  • MySQL 5.7.33
分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.