Mysql

MySQL - 使用者’root’@’localhost’的訪問被拒絕(使用密碼:是)

  • September 2, 2018

我正在努力解釋為什麼每次我在 OSX 上重新安裝 mysql 並導入數據庫時,在我重新啟動 mysql 實例的那一刻,我會收到以下消息提示:使用者“root”的訪問被拒絕@ ’localhost’(使用密碼:YES)。我將密碼保留為預設的 root,這令人沮喪。我已盡最大努力確保沒有其他 mysql 實例正在執行。活動監視器報告沒有其他 mysql 實例,並且在搜尋 pid 時沒有其他實例出現。有誰知道發生了什麼?

當您導入包含 MySQL 數據庫本身的 SQL 表時,可能會發生此錯誤,該數據庫包含 MySQL 本身使用的底層架構,這可能會在嘗試進入數據庫時導致嚴重問題。確保您導入的 SQL 轉儲僅包含您希望導入的數據庫,僅此而已。

在以下情況下可能會發生此錯誤:

  1. 使用不正確的密碼。既然您提到您已將密碼預設為 root,請檢查您是否打開了 CAPS 鎖定。
  2. 如果您在選項文件中指定了不正確的密碼,則可能會發生這種情況。嘗試使用以下方式登錄:
mysqladmin --no-defaults -u root -p pass
  1. 您可能必須授予對 root 的訪問權限。
  • 停止 MySQL:
/etc/init.d/mysql stop
啟動 MYSQL 跳過授權:
sr/sbin/mysqld --skip-grant-tables --skip-networking &
登錄:
sql -u root
刷新權限:
USH PRIVILEGES;
更新密碼:
T PASSWORD FOR root@'localhost' = PASSWORD('password');
DATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root';

引用自:https://serverfault.com/questions/526696