單純「控制台→解除安裝」會殘留服務註冊、註冊表項目、資料目錄,導致重裝失敗或端口衝突。按此流程徹底清理。
# 1. 服務管理器 (services.msc) 停止 MySQL 服務
# 2. 命令列 (管理員) 移除服務
sc delete MySQL
# 或
mysqld --remove
# 開啟 regedit (Win+R → regedit)
# 依次展開並刪除以下三個鍵值 (若存在):
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL
# 亦可搜尋 "MySQL" 關鍵字,謹慎刪除相關項目
# 1. 安裝目錄 (預設)
C:\Program Files\MySQL\
C:\Program Files (x86)\MySQL\
# 2. 資料目錄 (my.ini 中 datadir 指向)
C:\ProgramData\MySQL\ # 隱藏目錄,啟用「顯示隱藏項目」查看
C:\Users\<用戶名>\AppData\Roaming\MySQL\
# 3. 配置檔
C:\Windows\my.ini
C:\my.cnf
# 4. 臨時檔案
C:\Windows\Temp\mysql*.tmp
Path 中移除 MySQL bin 目錄路徑# 重啟後確認:
# - services.msc 無 MySQL 服務
# - 3306 埠未被佔用 (netstat -ano | findstr 3306)
# - 註冊表搜尋 MySQL 無殘留
# - 安裝目錄、資料目錄已刪除
@echo off
sc stop MySQL 2>nul
sc delete MySQL 2>nul
mysqld --remove 2>nul
reg delete "HKLM\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL" /f 2>nul
reg delete "HKLM\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL" /f 2>nul
reg delete "HKLM\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL" /f 2>nul
rmdir /s /q "C:\Program Files\MySQL" 2>nul
rmdir /s /q "C:\Program Files (x86)\MySQL" 2>nul
rmdir /s /q "C:\ProgramData\MySQL" 2>nul
rmdir /s /q "C:\Users\%USERNAME%\AppData\Roaming\MySQL" 2>nul
del /f /q "C:\Windows\my.ini" 2>nul
del /f /q "C:\my.cnf" 2>nul
echo MySQL 徹底清理完成,請重啟電腦。
pause