當你嘗試使用 MySQL的 數據庫時,可能會遇到以下錯誤消息:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
如何解決MySQL的 ERROR 1045 (28000): Access denied for user 'root'@'localhost'?
1、首先停止你的服務器
service mysql stop
2、製作MySQL服務目錄。
mkdir /var/run/mysqld
3、授予MySQL 使用創建的目錄的權限。
chown mysql: /var/run/mysqld
4、啟動MySQL,無需權限和網絡檢查。
mysqld_safe --skip-grant-tables --skip-networking &
5、不用任何密碼登錄到你的服務器。
mysql -u root mysql
或:
mysql -u root mysql
在mysql 客戶端中,告訴服務器重新加載授權表,以便帳戶管理語句起作用:
mysql> FLUSH PRIVILEGES;
然後修改'root'@'localhost'
賬號密碼。將密碼替換為你要使用的密碼。要更改具有不同主機名部分的根帳戶的密碼,請修改使用該主機名的說明。
MySQL 5.7.6 及更高版本:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
MySQL 5.7.5 及更早版本:
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
或者直接在用戶表上:
UPDATE mysql.user SET password=PASSWORD('mynewpassword') WHERE user='root';
XAMPP 專用
停止MySQL 服務,打開命令窗口,切換到XAMPP MySQL 目錄:
> cd \xampp\mysql\bin\
在沒有安全保護的情況下運行服務(注意你運行的是mysqld,而不是mysql):
> mysqld.exe --skip-grant-tables
MySQL 服務將在此窗口中運行,因此打開另一個命令窗口並切換到XAMPP MySQL 目錄:
> cd \xampp\mysql\bin\
運行MySQL 客戶端:
> mysql
更新密碼:
mysql> UPDATE mysql.user SET password=PASSWORD('mynewpassword') WHERE user='root';
退出MySQL:
mysql> \q
使用任務管理器取消仍在運行的mysqld.exe,重啟MySQL服務。
希望陳溈亮博客( https://www.chenweiliang.com/ ) 分享的《MySQL ERROR 1045 (28000): Access denied for user 'root'@'localhost'如何解決》,對您有幫助。
歡迎分享本文鏈接:https://www.chenweiliang.com/cwl-30369.html
歡迎加入陳溈亮博客的Telegram 頻道,獲取最新更新!
🔔 率先在頻道置頂目錄獲取寶貴的《ChatGPT 內容行銷AI 工具使用指南》! 🌟
📚 這份指南蘊含價值巨大,🌟難逢的機遇,切勿錯失良機! ⏰⌛💨
喜歡就分享和按贊!
您的分享和按贊,是我們持續的動力!
📚 這份指南蘊含價值巨大,🌟難逢的機遇,切勿錯失良機! ⏰⌛💨
喜歡就分享和按贊!
您的分享和按贊,是我們持續的動力!