首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> MySQL 資料庫 >> MySQL 綜合教學

macOS 修改 MySQL root 密碼與權限問題完整解決方案

     編輯:MySQL 綜合教學

macOS 修改 MySQL root 密碼與權限問題完整解決方案

在 macOS 上安裝 MySQL 後,若直接以 root 身分啟動服務而未指定 --user=mysql 參數,會導致資料目錄產生 root 擁有的檔案,進而引發權限錯誤,造成無法修改 root 密碼、各類存取被拒等問題。本文依據官方文件提供完整修復流程。

問題根因

若使用 root 帳號啟動 mysqld 且未加 --user=mysql,伺服器會在資料目錄建立 root 擁有的檔案(如日誌),導致後續啟動時發生權限衝突。

解決步驟

  1. 停止 MySQL 服務
    找到 PID 檔(通常在 /usr/local/mysql/data/ 下,檔名含主機名且以 .pid 結尾),執行:
    kill `cat /usr/local/mysql/data/主機名.pid`
  2. 建立初始化 SQL 腳本
    在 /usr/local/ 建立 update_passwd 檔案,內容如下:
    UPDATE mysql.user SET Password=PASSWORD('MyNewPass') WHERE User='root';
    FLUSH PRIVILEGES;
  3. 以安全模式啟動並載入初始化腳本
    切換至 root 權限,進入 MySQL bin 目錄執行:
    mysqld_safe --init-file=/usr/local/update_passwd &
  4. 驗證修改結果
    另開終端機視窗,登入 MySQL 確認密碼已更新:

    mysql -u root -p
    # 輸入新密碼 MyNewPass

關鍵提醒

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