MySQL創建用戶 修改密碼 忘記root用戶密碼的解決方案

新建用戶

  • 新建用戶 create user 'wuyujin'@'%' identified by '123456';
  • 授予權限 grant all privileges on *.* to 'wuyujin'@'%'; privileges可以省略
  • 刷新權限 flush privileges;

修改用戶密碼

  • 用語句修改密碼

    • alter user 'root'@'localhost' identified by '123456'; 推薦
    • set password for root@localhost = password('123456'); 記得自己用password()轉換明文密碼
    • update mysql.user set password=password('123') where user='root' and host='localhost';
      改過密碼之後,記得刷新權限:flush privileges;
      flush privileges表示從mysql數據庫的grant表中重新加載權限數據。因爲MySQL把權限都放在了cache中,所以在做完更改後需要重新加載。
  • mysqladmin程序修改密碼
    mysqladmin -u用戶名 -p舊密碼 password 新密碼
    如:mysqladmin -uroot -p123456 password 123

重設root用戶密碼

  • 場景
    有時候會忘記root賬號密碼(學生居多),這時不要慌,root密碼忘記也可以重設。

  • 思路

    1. mysqld 重啓MySQL服務器,設置參數使得本次服務運行期間,不輸入密碼也可以登入MySQL客戶端
    2. mysql 不用密碼登入MySQL客戶端,修改root用戶密碼(或直接改寫mysql.user表中對應的數據)。
    3. 刷新權限。退出客戶端。重啓服務端。一切正常了。
  • 解決流程

    1. 關閉正在運行的MySQL服務。
    2. 打開DOS窗口,轉到mysql\bin目錄。
    3. 輸入mysqld --skip-grant-tables 回車。–skip-grant-tables 的意思是啓動MySQL服務的時候跳過權限表認證。
    4. 再開一個DOS窗口(因爲剛纔那個DOS窗口已經不能動了),轉到mysql\bin目錄。
    5. 輸入mysql回車,如果成功,將出現MySQL提示符 >。
    6. 連接權限數據庫: use mysql; 。
    7. 改密碼:update user set password=password(“123”) where user=“root”;(別忘了最後加分號) 。
    8. 刷新權限(必須步驟):flush privileges; 。
    9. 退出 quit。
    10. 註銷系統,再進入,使用用戶名root和剛纔設置的新密碼123登錄。
發佈了283 篇原創文章 · 獲贊 156 · 訪問量 30萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章