
完全卸载 MySQL 是一个常见但需要谨慎操作的任务,因为如果残留文件清理不干净,可能会导致下次安装失败或出现各种奇怪的问题。
“干净” 卸载通常意味着:
-
卸载 MySQL 服务:停止并移除 MySQL 相关的 Windows Service 或 Linux Daemon。
-
删除程序文件:移除 MySQL 的安装目录。
-
删除数据文件:移除存放数据库数据的目录(这步最关键,通常包含你所有的数据库!)。
-
清理注册表(Windows):删除 MySQL 在系统注册表中留下的配置信息。
-
清理环境变量(Windows):如果之前添加过,需要将其从 PATH 中移除。
下面我将根据不同的操作系统,提供详细的步骤。
在执行任何卸载步骤之前,请务必确认你不再需要服务器上的任何数据,或者已经将所有重要数据库备份。
-
推荐方法:使用 mysqldump
命令导出所有数据库。
mysqldump -u root -p --all-databases > all_databases_backup.sql
执行后会提示你输入 root
用户的密码,然后所有数据库的结构和数据都会被保存到 all_databases_backup.sql
文件中。
-
备用方法:如果你无法启动 MySQL 服务,可以直接复制整个数据目录作为备份。数据目录的位置通常在:
-
Windows:
C:\ProgramData\MySQL\MySQL Server X.X\data
(ProgramData
文件夹可能是隐藏的)
-
Linux:
/var/lib/mysql
这里以 Windows 10/11 为例。
-
按
Win + R
键,输入 services.msc
并回车,打开 “服务” 窗口。
-
在服务列表中找到名为
MySQL
的服务(可能带有版本号,如 MySQL80
)。
-
右键点击该服务,选择 “停止”。
-
按
Win + R
键,输入 appwiz.cpl
并回车,打开 “程序和功能” 窗口。
-
在列表中找到所有与 MySQL 相关的程序,例如:
-
MySQL Server 8.0
-
MySQL Workbench 8.0 CE
-
MySQL Shell 8.0
-
MySQL Installer - Community
-
逐个右键点击它们,选择 “卸载”,并按照提示完成卸载过程。建议最后卸载
MySQL Installer
。
-
打开文件资源管理器,进入 MySQL 的默认安装路径,通常是
C:\Program Files\MySQL\
。
-
删除该目录下与你要卸载版本相关的文件夹(如
MySQL Server 8.0
)。
-
数据目录通常不在
Program Files
下,而是在隐藏的 ProgramData
文件夹中。
-
在文件资源管理器的地址栏输入
C:\ProgramData\MySQL\
并回车。
-
删除这里的相关数据文件夹(如
MySQL Server 8.0
)。此操作将永久删除你的所有数据库文件,请确保已备份!
警告:修改注册表有风险,操作前请备份注册表或创建系统还原点。
-
按
Win + R
键,输入 regedit
并回车,打开注册表编辑器。
-
使用
Ctrl + F
搜索 MySQL
,找到以下路径并删除它们(如果存在):
-
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL
(可能带有版本号后缀)
-
HKEY_LOCAL_MACHINE\SOFTWARE\MySQL AB
-
HKEY_LOCAL_MACHINE\SOFTWARE\MySQL
-
HKEY_CURRENT_USER\SOFTWARE\MySQL AB
-
HKEY_CURRENT_USER\SOFTWARE\MySQL
-
彻底删除这些键值。
-
右键点击 “此电脑” -> “属性” -> “高级系统设置” -> “环境变量”。
-
在 “系统变量” 或 “用户变量” 中找到名为
Path
的变量。
-
点击 “编辑”,检查列表中是否有指向 MySQL 安装目录的条目(如
C:\Program Files\MySQL\MySQL Server 8.0\bin
)。
-
如果有,选中它并点击 “删除”。
-
一路点击 “确定” 保存。
完成以上所有步骤后,务必重启你的电脑,以确保所有相关进程都已释放。
Linux 的卸载过程相对直接,但也需要注意数据目录的清理。
sudo systemctl stop mysql
sudo service mysql stop
根据你安装 MySQL 的方式,选择对应的命令。
情况 A:通过 apt
包管理器安装 (Debian/Ubuntu)
-
查找已安装的包:
你会看到类似 mysql-server-8.0
, mysql-client-8.0
等包。
-
彻底卸载:使用 purge
而不是 remove
,purge
会同时删除配置文件。
sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
-
清理不再需要的依赖:
sudo apt-get autoremove
sudo apt-get autoclean
情况 B:通过 yum
/dnf
包管理器安装 (CentOS/RHEL)
-
查找已安装的包:
-
卸载:
sudo yum remove mysql mysql-server mysql-libs mysql-server
sudo dnf remove mysql mysql-server
这一步会删除你所有的数据库。
sudo rm -rf /var/lib/mysql/
sudo rm -rf /etc/mysql/
sudo rm -rf /var/log/mysql
如果确定不再需要,可以删除 MySQL 创建的系统用户和组。
sudo userdel mysql
sudo groupdel mysql
只要严格按照以上步骤操作,就能确保 MySQL 被彻底卸载,为下次干净安装扫清障碍。