萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 資料庫 >> MySQL 教學

Windows 下 MySQL Root 密碼重置:--skip-grant-tables 圖文詳解

適用版本

MySQL 5.x / 8.0 Windows 版本通用。

步驟總覽

  1. 停止服務:net stop mysql 或服務管理器停止。
  2. 跳過權限啟動:
    開啟 CMD(管理員),進入 bin 目錄,執行:
    mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 5.x\my.ini" --console --skip-grant-tables
    視窗保持開啟,表示無權限模式已啟動。
  3. 新開 CMD 免密登入:
    mysql -u root -p → 密碼提示直接 Enter。
  4. 修改密碼:
    USE mysql;
    -- MySQL 5.7+
    UPDATE user SET authentication_string=PASSWORD('NewPass123') WHERE User='root';
    -- MySQL 5.6 或更舊
    UPDATE user SET Password=PASSWORD('NewPass123') WHERE User='root';
    FLUSH PRIVILEGES;
    QUIT;
  5. 重啟正常服務:
    關閉兩個 CMD 視窗,執行 net start mysql。
  6. 驗證:
    mysql -u root -p 輸入新密碼登入成功。

常見坑點

  • my.ini 路徑錯誤:確認 --defaults-file 指向正確配置檔。
  • 端口衝突:若 3306 被佔用,mysqld 啟動失敗,檢查是否殘留進程 taskkill /f /im mysqld.exe。
  • authentication_string vs Password:MySQL 5.7+ 欄位改名,SQL 需對應修改。
  • FLUSH PRIVILEGES 必須執行:否則修改不生效。
copyright © 萬盛學電腦網 all rights reserved