MySQL 版本升級(如 5.0→5.1、5.5→5.6、5.7→8.0)時,系統表結構可能新增欄位/權限,必須執行升級腳本才能使用新功能。
# 確保服務運行中 mysql_fix_privilege_tables --password=root_password # 或 mysql_fix_privilege_tables --user=root --password=root_password # 忽略 Duplicate column name 警告 # 完成後重啟服務 systemctl restart mysqld
# 進入安裝目錄 bin cd "C:\Program Files\MySQL\MySQL Server 5.1\bin" mysql -u root -p mysql mysql> SOURCE C:/Program Files/MySQL/MySQL Server 5.1/scripts/mysql_fix_privilege_tables.sql;
路徑依實際安裝目錄調整,使用正斜線 /。
share/mysql_fix_privilege_tables.sql(或 scripts/ 目錄)。mysql -u root -p mysql < mysql_fix_privilege_tables.sqlSHOW COLUMNS FROM mysql.user; 確認新欄位(如 authentication_string、password_expired 等)存在。SELECT User, Host, plugin FROM mysql.user; 檢查認證外掛。mysql_upgrade --force(MySQL 5.5+ 內建工具,自動偵測並升級系統表、檢查表相容性)。mysqldump -u root -p mysql > mysql_backup.sql)。Release Notes 不相容變更。