首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 服務完全卸載:注冊表 Eventlog 三鍵值必刪,附 PowerShell 一鍵腳本

     編輯:MySQL 資料庫相關知識

控制面板卸載 MySQL 後,服務註冊信息殘留在注冊表 Eventlog\Application\MySQL 下三個 ControlSet 中,導致重裝報「服務已存在」或路徑錯誤。

必刪注冊表路徑


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

PowerShell 一鍵清理(管理員運行)


$paths = @(
  'HKLM:\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL',
  'HKLM:\SYSTEM\ControlSet002\Services\Eventlog\Application\MySQL',
  'HKLM:\SYSTEM\CurrentControlSet\Services\Eventlog\Application\MySQL'
)
foreach ($p in $paths) {
  if (Test-Path $p) { Remove-Item -Recurse -Force $p; Write-Host "Removed: $p" }
}
# 同步刪除服務鍵(若存在)
$svc = 'HKLM:\SYSTEM\CurrentControlSet\Services\MySQL'
if (Test-Path $svc) { Remove-Item -Recurse -Force $svc }
Write-Host "MySQL registry cleanup done."

文件級清理清單

  • C:\Program Files\MySQL\
  • C:\ProgramData\MySQL\(隱藏,含 data 目錄)
  • C:\Users\\AppData\Roaming\MySQL\
  • %TEMP%\mysql*

驗證


sc query mysql  # 顯示 [SC] EnumQueryServicesStatus:OpenService FAILED 1060: 指定的服務不存在作為已安裝的服務
reg query HKLM\SYSTEM\CurrentControlSet\Services\MySQL  # 錯誤:系統找不到指定的注冊表鍵值

避坑

  • MySQL 8.0 服務名默認 MySQL80,注冊表路徑同理替換。
  • 多實例需分別清理對應服務名鍵值。
  • 清理前備份注冊表(reg export HKLM\SYSTEM\CurrentControlSet\Services\MySQL backup.reg)。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved