首頁 >資料庫 >mysql教程 >為什麼我的 MySQL 使用者表在 macOS 上缺少密碼欄位?

為什麼我的 MySQL 使用者表在 macOS 上缺少密碼欄位?

Linda Hamilton
Linda Hamilton原創
2024-11-29 01:53:15447瀏覽

Why is My MySQL User Table Missing the Password Field on macOS?

MySQL 使用者表密碼欄位缺失- macOS 上MySQL 安裝故障排除

嘗試在macOS 上修改MySQL root 密碼時,您可能會遇到以下情況:遇到錯誤,表示使用者表中的「密碼」列不存在。這可能會令人困惑,因為密碼欄位通常出現在 MySQL 使用者表中。

背景:

在 MySQL 5.7 版本中,對使用者表進行了重大更改。原來的“password”欄位被刪除並替換為“authentication_string”欄位來儲存使用者密碼。此變更旨在增強安全性並啟用各種身份驗證方法。

故障排除:

要解決此問題,需要使用適當的密碼字段名稱

解決方案:

  1. 使用指令存取MySQL控制台:

    mysql -u root

    (註:您可以如果您之前設定過,則需要提供密碼一。)

  2. 使用下列查詢來更新root 使用者的密碼:

    mysql> UPDATE user SET authentication_string = PASSWORD('1111') WHERE user = 'root';
  3. 此查詢將使用雜湊值更新 'authentication_string' 欄位密碼。
  4. 退出MySQL console.

其他資訊:

  • 驗證您是否選擇了正確的資料庫(例如mysql):

    mysql> USE mysql;
  • 檢查使用者的欄位結構table:

    mysql> DESCRIBE user;

    這將顯示表格架構,確保 'authentication_string' 欄位存在。

  • 有關MySQL 中密碼管理的更多詳細信息,請參閱官方MySQL 文檔5.7 及以上:
    https://dev.mysql.com/doc/refman/5.7/en/ authentication-passwords.html

以上是為什麼我的 MySQL 使用者表在 macOS 上缺少密碼欄位?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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