【IT之路】连接MySQL遇到ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor:yes)问题
一般這個(gè)錯(cuò)誤是由密碼錯(cuò)誤引起,解決的辦法自然就是重置密碼。
假設(shè)我們使用的是root賬戶。
1.重置密碼的第一步就是跳過(guò)MySQL的密碼認(rèn)證過(guò)程,方法如下:
#vim /etc/my.cnf(注:windows下修改的是my.ini)
在文檔內(nèi)搜索mysqld定位到[mysqld]文本段:
/mysqld(在vim編輯狀態(tài)下直接輸入該命令可搜索文本內(nèi)容)
在[mysqld]后面任意一行添加“skip-grant-tables”用來(lái)跳過(guò)密碼驗(yàn)證的過(guò)程,如下圖所示:
Linux
Windows
保存文檔并退出
2.接下來(lái)我們需要重啟MySQL:
Linux
/etc/init.d/mysql restart(有些用戶可能需要使用/etc/init.d/mysqld?restart)
Windows
3.重啟之后輸入mysql即可進(jìn)入mysql。
Linux
Windows
?
4.接下來(lái)就是用sql來(lái)修改root的密碼
進(jìn)入到終端當(dāng)中,敲入?mysql -u root -p?命令然后回車(chē),當(dāng)需要輸入密碼時(shí),直接按enter鍵,便可以不用密碼登錄到數(shù)據(jù)庫(kù)當(dāng)中
mysql> use mysql; mysql>?update?user?set?password=password("你的新密碼")?where?user="root"; mysql>?flush?privileges; mysql>?quit注意:如果在執(zhí)行該步驟的時(shí)候出現(xiàn)ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement?錯(cuò)誤。則執(zhí)行下?flush privileges?命令,再執(zhí)行該命令即可。
到這里root賬戶就已經(jīng)重置成新的密碼了。
5.編輯my.cnf,去掉剛才添加的內(nèi)容,然后重啟MySQL。大功告成!
?網(wǎng)上有很多關(guān)于這個(gè)問(wèn)題的解決說(shuō)明,很多剛接觸的朋友可能比較迷惑的是在自己的平臺(tái)上找不到my.cnf或者my.ini文件,如果你是Linux,使用如下方式可以搜索到:
至于windows平臺(tái),去安裝目錄下找一下my.ini吧。
總結(jié)
以上是生活随笔為你收集整理的【IT之路】连接MySQL遇到ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using passwor:yes)问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 五步教你快速搭建http代理
- 下一篇: 数据库基础学习-计划内容 For 小样儿