Mysql啟動(dòng)報(bào)錯(cuò)Error1045(28000)的原因分析及解決
問題描述
無論是用Navicat還是用dos命令連接都會(huì)報(bào)錯(cuò),在服務(wù)中直接啟動(dòng)服務(wù)也是報(bào)錯(cuò),報(bào)錯(cuò)內(nèi)容為Error1045(28000)…
這個(gè)問題就是Mysql密碼過期導(dǎo)致的,解決思路就是修改密碼即可
第一步:修改配置文件,mysql啟動(dòng)時(shí)略過密碼驗(yàn)證
(1)找到mysql.ini文件
這個(gè)文件在你的Mysql安裝文件夾里,如果你是在找不到安裝的文件夾在哪,可以去你的環(huán)境變量里看看配置的路徑是什么,如下圖:

直接復(fù)制這個(gè)路徑找到位置,肯定就能找到mysql.ini了,如下圖:

(2)修改mysql.ini文件
使用記事本或者Notepad++打開文件,ctrl+f搜索“mysqld”,有很多個(gè)mysqld,注意看上下文,找到以后在下行加上“skip-grant-tables”。

skip-grant-tables作為啟動(dòng)參數(shù)的作用:MYSQL服務(wù)器不加載權(quán)限判斷,任何用戶都能訪問數(shù)據(jù)庫。
無密碼登錄mysql,然后修改密碼
(1)此時(shí)登錄mysql不再需要密碼
- 輸入:
mysql -uroot -p
Enter password時(shí)直接回車
此時(shí)發(fā)現(xiàn)登錄成功,如下圖:

(2)找到存放用戶密碼的庫和表,然后修改密碼
- 首先找到庫:
use mysql;
- 然后修改密碼:
update user set authentication_string=password(‘root') where user=‘root';
- 刷新權(quán)限:
flush privileges;
注意,mysql5.8版本中,密碼對應(yīng)的字段不是password,而是authentication_string
(3)簡單分析
查看user表的詳細(xì)信息,可以看到在幾天前密碼被修改了,其實(shí)也就是到期了

恢復(fù)mysql.ini文件,重新登錄mysql
- 把加在mysql.ini里的那句話刪除
- 重啟服務(wù),還不行的話就重啟電腦
- 重啟登錄,用新設(shè)置的密碼,搞定
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
更新text字段時(shí)出現(xiàn)Row size too large報(bào)錯(cuò)應(yīng)付措施
個(gè)人建議:表的text字段很多建議建表時(shí)加上 row_format = dynamic當(dāng)然,回過頭來MySQL的報(bào)錯(cuò)也是有誤導(dǎo)性的,感興趣的你可以參考下本文2013-03-03
SpringBoot連接MySQL獲取數(shù)據(jù)寫后端接口的操作方法
今天通過本文給大家介紹SpringBoot連接MySQL獲取數(shù)據(jù)寫后端接口的操作方法,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-11-11
mysql利用mysqlbinlog命令恢復(fù)誤刪除數(shù)據(jù)的實(shí)現(xiàn)
這篇文章主要介紹了mysql利用mysqlbinlog命令恢復(fù)誤刪除數(shù)據(jù)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
MySQL數(shù)據(jù)庫中數(shù)值字段類型長度int(11)和Decimal(M,D)詳解
這篇文章主要介紹了MySQL數(shù)據(jù)庫中數(shù)值字段類型長度int(11)和Decimal(M,D)字段詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06
關(guān)于mysql?left?join?查詢慢時(shí)間長的踩坑總結(jié)
這篇文章主要介紹了關(guān)于mysql?left?join?查詢慢時(shí)間長的踩坑總結(jié),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09
mysql 截取指定的兩個(gè)字符串之間的內(nèi)容
今天我同事在用mysql的時(shí)候,需要對一個(gè)字符串中的指定內(nèi)容進(jìn)行截取2009-07-07
MySQL超大數(shù)據(jù)量查詢與刪除優(yōu)化的詳細(xì)方案
在處理TB級數(shù)據(jù)時(shí),傳統(tǒng)SQL操作可能導(dǎo)致性能崩潰,本文揭示MySQL超大數(shù)據(jù)量場景下的核心優(yōu)化策略,通過生產(chǎn)環(huán)境案例展示如何將億級數(shù)據(jù)刪除耗時(shí)從8小時(shí)壓縮至8分鐘,并附完整監(jiān)控方案與容災(zāi)措施,需要的朋友可以參考下2025-09-09

