【背景】
最近學(xué)習(xí)碰到了一件挺令人尷尬的事情,我把MySQL的密碼給忘記了,所以MySQL登錄不進(jìn)去。
網(wǎng)上的解決方案很多,嘗試了很多,依舊是被窗口的各種報(bào)錯(cuò)虐。感謝大神的助力,MySQL忘記密碼解決方案才得以清晰,希望本篇博客的解決過(guò)程可以幫到讀者。
【問(wèn)題解決過(guò)程】
一、跳過(guò)MySQL的權(quán)限審查進(jìn)入MySQL
首先,找到MySQL的my.ini配置文件。
然后,打開文件,在mysqld下,添加一句代碼 skip-grant-tables ,以跳過(guò)權(quán)限的審核。
很重要的一步:win+R 輸入services.msc,找到mysql服務(wù),重啟服務(wù)。
我懷疑我之前操作的時(shí)候,這一步?jīng)]有執(zhí)行正確。(而且,這里我也有點(diǎn)疑問(wèn),我怎么有兩個(gè)MySQL服務(wù),一個(gè)MySQL,一個(gè)MySQL57,MySQL屬性里沒(méi)有配置文件,而MySQL57是有的。)
二、在mysql.user表中重置密碼
首先,cmd進(jìn)入DOS窗口,輸入MySQL,回車。就可以順利進(jìn)入MySQL,而不需要密碼。(我之前連這一步都 實(shí)現(xiàn)不了,所以當(dāng)成功進(jìn)入MySQL的時(shí)候,別提我心里多高興了~~)
然后,我們?cè)倏纯磎ysql.user表里都有啥。 select user,host,authentication_string from mysql.user
(Tips:一開始查詢 password,發(fā)現(xiàn)這個(gè)字段是不存在,后來(lái)上網(wǎng)查才知道MySQL5.7 把password的字段給換掉了,換成了authentication_string中文含義 認(rèn)證字符串>。)
=================================
此處,對(duì)host進(jìn)行一下了解。
Host列指定了允許用戶登錄所使用的IP范圍。
比如user=root Host=192.168.21.1。這里的意思就是說(shuō)root用戶只能通過(guò)192.168.21.1的客戶端去訪問(wèn)。而%是個(gè)通配符,如果Host=192.168.1.%,那么就表示只要是IP地址前綴為“192.168.21.”的客戶端都可以連接。如果Host=%,表示所有IP都有連接權(quán)限。所以要開啟遠(yuǎn)程連接的時(shí)候,大部分人都直接把Host改成%的緣故,因?yàn)檫@樣超級(jí)方便。
=================================
很重要的一步:我們?cè)O(shè)置一下host和密碼。
Update mysql.user set host="%",authentication_string=password('root') where user='root';
三、刷新權(quán)限,將更改完且處于緩沖區(qū)內(nèi)的數(shù)據(jù)更新。 flush privileges
還有一點(diǎn)小疑問(wèn):刷新之后,你直接輸入mysql,是沒(méi)有辦法跳過(guò)密碼審核進(jìn)入MySQL的,但是配置文件明明還沒(méi)有把那句 skip-grant-tables 注釋掉?。克⑿聲?huì)忽略掉剛才修改的配置文件么?
反正,后來(lái)還是把my.ini里那句 skip-grant-tables 注釋了。。
四、使用你的密碼登錄吧!
首先,輸入 mysql -u root -p
,然后輸入剛才設(shè)置的密碼,你就可以成功進(jìn)入啦!
最后,請(qǐng)養(yǎng)成好習(xí)慣,記住你的寶貝密碼。:)
【小結(jié)】
本來(lái)想重新安裝MySQL的心都有了,但是還是堅(jiān)持到問(wèn)題成功解決,過(guò)程是有點(diǎn)痛苦,但是結(jié)局是美好的。
以上所述是小編給大家介紹的Windows 8.1下MySQL5.7 忘記root 密碼的解決方法,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
您可能感興趣的文章:- MySQL8下忘記密碼后重置密碼的辦法(MySQL老方法不靈了)
- mysql8.0.19忘記密碼的完美解決方法
- MySQL 8忘記密碼的最佳處理方式淺析
- mysql 8.0.18 壓縮包安裝及忘記密碼重置所遇到的坑
- mysql8.0忘記密碼修改與net命令服務(wù)名無(wú)效問(wèn)題
- MySQL8忘記密碼的快速解決方法