首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

解決 MySQL 忽略用戶、密碼錯誤導致無法登入的問題

     編輯:MySQL 資料庫相關知識

MySQL 啟動時出現「密碼錯誤:忽略用戶」的原因與修正

當 MySQL 啟動或重新載入授權表時,若在 user 表中發現非法密碼的帳號,會輸出類似 Found wrong password for user 'some_user'@'some_host'; ignoring user 的警告,並直接忽略該帳號。以下為四大常見成因及解決方案:

1. 舊版 user 表搭配新版 mysqld

執行 mysqlshow mysql user 檢查 Password 欄位長度是否短於 16 字元。若是,請執行 /add_long_password 腳本修正。

2. 使用舊式 8 字元密碼,但未啟用 --old-protocol

兩種解法:

  • 更新 user 表,將帳號密碼改為新格式
  • 以 --old-protocol 參數重啟 MySQLd

3. 未使用 PASSWORD() 函數設定密碼

必須使用 PASSWORD() 函數更新密碼:

UPDATE user SET Password=PASSWORD('newpwd')
WHERE User='some_user' AND Host='some_host';

完成後記得執行 FLUSH PRIVILEGES; 重新載入權限。

4. 密碼欄位內容損毀或格式錯誤

若上述方法無效,請檢查該帳號的 Password 欄位是否為空值、亂碼或長度異常,必要時刪除該帳號重建。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved