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

MySQL root 密碼遺忘?Windows/Linux 雙平台重置實戰教程

     編輯:MySQL 綜合教學

MySQL root 密碼遺忘?Windows/Linux 雙平台重置實戰教程

前提條件:擁有資料庫伺服器的作業系統管理員權限。核心原理是啟動 MySQL 時跳過權限驗證 (skip-grant-tables),以免密碼登入後修改密碼,最後恢復正常驗證模式。

Windows 平台操作步驟

  1. 修改配置檔: 開啟 my.ini,在 [mysqld] 區段下新增 skip-grant-tables。
  2. 重啟服務: 透過「服務」管理工具或命令列 net stop mysql / net start mysql 重啟 MySQL。
  3. 免密登入: 執行 mysql -u root 直接進入控制台。
  4. 更新密碼:
    USE mysql;
    UPDATE user SET password=PASSWORD('新密碼') WHERE user='root';
    FLUSH PRIVILEGES;
  5. 恢復配置: 註釋或刪除 skip-grant-tables,再次重啟服務,新密碼即生效。

Linux 平台操作步驟

  1. 停止服務: service mysqld stop 或 killall -TERM mysqld。
  2. 跳過權限啟動: mysqld_safe --skip-grant-tables & (或 /usr/local/mysql/bin/mysqld_safe --skip-grant-tables & 指定路徑)。
  3. 免密登入並修改: 同 Windows 步驟 3-4。
  4. 重啟服務: 正常啟動 service mysqld start。

替代方案:使用 mysqladmin

若知道舊密碼或未啟用 skip-grant-tables,可直接執行:

mysqladmin -u root -p password '新密碼'

關鍵提示

  • mysqld 中的 d 代表 Daemon (守護進程)。
  • 修改密碼後務必執行 FLUSH PRIVILEGES; 刷新權限表。
  • 生產環境操作前請備份資料,並確認防火牆/SELinux 不阻擋連接埠。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved