在安裝完數(shù)據(jù)庫后,由于自己不小心直接關閉了安裝窗口,或者長時間沒有使用root用戶登錄系統(tǒng),導致忘記了root密碼,這時就需要重置MySQL的root密碼。當然,最簡單方式自然是刪除數(shù)據(jù)庫的data目錄,然后重新安裝數(shù)據(jù)庫。但是很多時間我們需要保留data目錄中的數(shù)據(jù),所以就需要查找如何重置root密碼。
我們知道,在知道root密碼時,可以使用“ALTER USER ‘root'@'localhost' IDENTIFIED BY ‘新密碼';”指令來修改root用戶的密碼,如下圖:
![](/d/20211018/61cc81d400eb75614d651c5309145ed2.gif)
只需要這一行指令就完成了對root密碼的從新設置,無需其他操作,十分的簡單。
但是,如果忘記了root密碼,又該如何重置呢?根據(jù)官方文檔的描述,Windows系統(tǒng)下有兩種方法可以修改密碼,官方文檔請參考鏈接
方案一:執(zhí)行初始化文件
步驟1:使用管理權限的賬戶登錄系統(tǒng);
步驟2:停止MySQL的服務,不管用什么方法,必須讓它停下來,如下圖:
![](/d/20211018/ae96c001960258a2cdc5d0663b0a881a.gif)
步驟3:創(chuàng)建一個文件mysql-init.txt,里面寫著修改密碼的指令“ALTER USER ‘root'@'localhost' IDENTIFIED BY ‘新密碼';”,然后將文件保存,如圖所示:
![](/d/20211018/46d0bdb431a79dcdf81554d61a27ec36.gif)
步驟4:在終端界面中,進入到MySQL安裝的bin目錄下:
![](/d/20211018/485934495196413a0328a3649df05d27.gif)
步驟5:在bin目錄下,執(zhí)行mysqld,并指定剛才創(chuàng)建的mysql-ini.txt作為初始化文件,使用指令為“mysqld –defaults-file=”D:\Programs\MySQL\MySQL-8.0.12-winx64\my.ini” –init-file=”D:\Programs\MySQL\mysql-ini.txt””,其中,–defaults-file指定的是配置文件,–init-file指定的是初始化執(zhí)行的文件,如下圖所示:
![](/d/20211018/80e2a6dfb543b18f1b150b293a2dfd47.gif)
按回車鍵之后,不要關閉終端,需要再打開一個終端,來確認密碼修改是否成功:
![](/d/20211018/4dac5b97503d8f4606921bf316b235e6.gif)
很明顯,登陸成功了,修改密碼方式正確!
當然,若是真的關閉了終端,也可以使用“net start MySQL”的指令方式啟動MySQL,然后再進行驗證:
![](/d/20211018/8b74035999918de3cadb704d60163e31.gif)
步驟6:刪除創(chuàng)建的mysql-ini.txt文件,當然,不刪除也是可以的!
方案二:使用登錄時跳過驗證的方式重置root密碼
步驟1:先關閉MySQL服務,然后使用“–skip-grant-tables”配置項,跳過權限驗證方式重啟MySQL服務:
![](/d/20211018/f6956b3da38de1afc51d9de47ec88c3f.gif)
這里使用的指令是“mysqld –shared-memory –skip-grant-tables”,若是只是“mysqld –skip-grant-tables”的話,會導致mysqld啟動失敗,提示“TCP/IP, –shared-memory, or –named-pipe should be configured on NT OS”錯誤。經(jīng)過測試,只有加上“–shared-memory”才能啟動、訪問數(shù)據(jù)庫。
步驟2:在打開一個終端,在里面使用免密的方式登陸數(shù)據(jù)庫,直接運行mysql即可:
/p>
步驟3:首先刷新執(zhí)行指令“FLUSH PRIVILEGES;”,刷新權限:
![](/d/20211018/2e7e73f90a21ab93b6eb7fe872b70a02.gif)
然后執(zhí)行指令“ALTER USER ‘root'@'localhost' IDENTIFIED BY ‘new_psd_123';”進行密碼更新操作,“new_psd_123”即是設置的新密碼:
![](/d/20211018/97bbe7e54aec927a1315b83bc720232c.gif)
設置完成后,正常啟動MySQL服務,使用用戶名密碼進行驗證是否設置成功!
![](/d/20211018/fc8a2f9d720ee11f88675de5b5f10cfa.gif)
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:- MySQL8.0.23版本的root密碼重置最優(yōu)解法
- Linux mysql-5.6如何實現(xiàn)重置root密碼
- 重置mysql的root密碼最簡單的方法
- 解決重置Mysql root用戶賬號密碼問題
- mysql8重置root用戶密碼的完整步驟
- MySQL/MariaDB的Root密碼重置教程
- Mac MySQL重置Root密碼的教程
- windows下重置mysql的root密碼方法介紹
- lnmp重置mysql數(shù)據(jù)庫root密碼的兩種方法
- 詳解如何在Linux中重置MySQL或者MariaDB的root密碼
- CentOS下重置MySQL的root密碼的教程
- MySQL root密碼的重置方法