首頁 >資料庫 >mysql教程 >為什麼使用者「root@localhost」的 MySQL 存取被拒絕(使用密碼:NO 或 YES)?

為什麼使用者「root@localhost」的 MySQL 存取被拒絕(使用密碼:NO 或 YES)?

DDD
DDD原創
2024-12-22 12:10:45526瀏覽

Why Is MySQL Access Denied for User 'root@localhost' (Using Password: NO or YES)?

MySQL 錯誤:使用者「root@localhost」存取被拒絕(使用密碼:否)

問題:

問題:

嘗試在Windows 桌面上執行WordPress 時,需要MySQL。然而,如果在安裝過程中沒有設定 root 密碼,WordPress 會在安裝時要求輸入 root 密碼。嘗試使用預設密碼或沒有密碼使用 mysql -u root -p 存取 MySQL 會導致存取被拒絕。

潛在解決方案:
  1. 使用者可能不會在安裝過程中為MySQL設定了root密碼。若要解決此問題,請依照下列步驟操作:
  2. 停止 MySQL 服務:停止 Windows 服務中的 MySQL 服務。
  3. 開啟命令提示字元: 開啟提升的命令提示字元。
  4. 更改目錄:導覽至 MySQL bin 目錄:c:program filesmysqlbin.
mysqld --defaults-file="C:\program files\mysql\mysql server 5.1\my.ini" --init-files=C:\root.txt
執行指令:
    執行以下命令,將「C:root.txt」替換為包含根目錄的檔案的路徑密碼(如果有):
  1. 啟動MySQL服務:在Windows服務中重新啟動MySQL服務。

輸入密碼:在指令提示字元中輸入mysql -u root -p,出現提示時輸入root密碼。

更新:

即使執行上述步驟後,存取可能會仍被拒絕,並顯示錯誤訊息:

「使用者' root@localhost'的存取被拒絕(使用密碼:YES)」

其他解決方案:
  1. 要修復此錯誤,請使用以下命令重設root 使用者的密碼步驟:
  2. 以安全模式重新啟動MySQL: 停止MySQL 服務,然後使用mysqld_safe --skip-grant-tables &.
  3. 連接MySQL:輸入MySQL命令提示符:mysql -u root.
重設密碼:
mysql> use mysql;
mysql> truncate table user;
mysql> flush privileges;
mysql> grant all privileges on *.* to root@localhost identified by 'YourNewPassword' with grant option;
mysql> quit;
使用以下指令重設密碼:
  1. 正常重啟🎜 >殺死mysqld_safe進程和MySQL進程,然後正常啟動MySQL
  2. 測試存取:
使用步驟 3 設定的 root 密碼連接到 MySQL,例如 mysql -u root -pYourNewPassword。現在應該已授予存取權限。

以上是為什麼使用者「root@localhost」的 MySQL 存取被拒絕(使用密碼:NO 或 YES)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn