mysql8.0.12如何重置root密碼
在安裝完數(shù)據(jù)庫后,由于自己不小心直接關(guān)閉了安裝窗口,或者長時間沒有使用root用戶登錄系統(tǒng),導(dǎo)致忘記了root密碼,這時就需要重置MySQL的root密碼。當(dāng)然,最簡單方式自然是刪除數(shù)據(jù)庫的data目錄,然后重新安裝數(shù)據(jù)庫。但是很多時間我們需要保留data目錄中的數(shù)據(jù),所以就需要查找如何重置root密碼。
我們知道,在知道root密碼時,可以使用“ALTER USER ‘root'@'localhost' IDENTIFIED BY ‘新密碼';”指令來修改root用戶的密碼,如下圖:

只需要這一行指令就完成了對root密碼的從新設(shè)置,無需其他操作,十分的簡單。
但是,如果忘記了root密碼,又該如何重置呢?根據(jù)官方文檔的描述,Windows系統(tǒng)下有兩種方法可以修改密碼,官方文檔請參考鏈接
方案一:執(zhí)行初始化文件
步驟1:使用管理權(quán)限的賬戶登錄系統(tǒng);
步驟2:停止MySQL的服務(wù),不管用什么方法,必須讓它停下來,如下圖:

步驟3:創(chuàng)建一個文件mysql-init.txt,里面寫著修改密碼的指令“ALTER USER ‘root'@'localhost' IDENTIFIED BY ‘新密碼';”,然后將文件保存,如圖所示:

步驟4:在終端界面中,進(jìn)入到MySQL安裝的bin目錄下:

步驟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í)行的文件,如下圖所示:

按回車鍵之后,不要關(guān)閉終端,需要再打開一個終端,來確認(rèn)密碼修改是否成功:

很明顯,登陸成功了,修改密碼方式正確!
當(dāng)然,若是真的關(guān)閉了終端,也可以使用“net start MySQL”的指令方式啟動MySQL,然后再進(jìn)行驗(yàn)證:

步驟6:刪除創(chuàng)建的mysql-ini.txt文件,當(dāng)然,不刪除也是可以的!
方案二:使用登錄時跳過驗(yàn)證的方式重置root密碼
步驟1:先關(guān)閉MySQL服務(wù),然后使用“–skip-grant-tables”配置項(xiàng),跳過權(quán)限驗(yàn)證方式重啟MySQL服務(wù):

這里使用的指令是“mysqld –shared-memory –skip-grant-tables”,若是只是“mysqld –skip-grant-tables”的話,會導(dǎo)致mysqld啟動失敗,提示“TCP/IP, –shared-memory, or –named-pipe should be configured on NT OS”錯誤。經(jīng)過測試,只有加上“–shared-memory”才能啟動、訪問數(shù)據(jù)庫。
步驟2:在打開一個終端,在里面使用免密的方式登陸數(shù)據(jù)庫,直接運(yùn)行mysql即可:
/p>
步驟3:首先刷新執(zhí)行指令“FLUSH PRIVILEGES;”,刷新權(quán)限:

然后執(zhí)行指令“ALTER USER ‘root'@'localhost' IDENTIFIED BY ‘new_psd_123';”進(jìn)行密碼更新操作,“new_psd_123”即是設(shè)置的新密碼:

設(shè)置完成后,正常啟動MySQL服務(wù),使用用戶名密碼進(jìn)行驗(yàn)證是否設(shè)置成功!

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL?緩存機(jī)制與架構(gòu)解析(最新推薦)
本文詳細(xì)介紹了MySQL的緩存機(jī)制和整體架構(gòu),包括一級緩存(InnoDB?Buffer?Pool)和二級緩存(Query?Cache),文章還探討了SQL查詢執(zhí)行全流程,并分析了MySQL?8.0移除查詢緩存的原因,最后,提出了應(yīng)用層緩存和InnoDB緩沖池優(yōu)化的建議,感興趣的朋友跟隨小編一起看看吧2025-02-02
MybatisPlus攔截器如何實(shí)現(xiàn)數(shù)據(jù)表分表
為了解決MySQL中大數(shù)據(jù)量的查詢效率問題,采用水平拆分策略,通過取模運(yùn)算確定表后綴,實(shí)現(xiàn)數(shù)據(jù)的有效管理,設(shè)計(jì)分表時,需利用線程變量存取請求參數(shù),并通過攔截器確定操作的具體表名,從而優(yōu)化數(shù)據(jù)處理性能,此方法適用于業(yè)務(wù)表數(shù)據(jù)量大或快速增長的場景2024-11-11
淺談mysql 系統(tǒng)用戶最大文件打開數(shù)限制
這篇文章主要介紹了mysql 系統(tǒng)用戶最大文件打開數(shù)限制,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-03-03

