Linux卸载MySQL总结

这篇博客总结了在Linux系统中卸载MySQL的过程,包括通过RPM包安装的MySQL如何卸载,涉及关闭服务、查找并删除相关文件夹和配置、移除用户及用户组等步骤。同时提到了二进制包/源码安装的卸载注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

 

RPM包安装方式的MySQL卸载

1: 检查是否安装了MySQL组件。

 MySQL的安装主要有三种方式:二进制包安装(Using Generic Binaries)、RPM包安装、源码安装。

 

[root@DB-Server init.d]# rpm -qa | grep -i mysql
 
MySQL-devel-5.6.23-1.linux_glibc2.5
 
MySQL-client-5.6.23-1.linux_glibc2.5
 
MySQL-server-5.6.23-1.linux_glibc2.5
 

clip_image001

如上所示,说明安装了MySQL 5.6.23这个版本的client、server、devel三个组件。

 

2: 卸载前关闭MySQL服务

 

2.1 方法1

[root@DB-Server init.d]# service mysql status
 MySQL running (25673)[  OK  ]
[root@DB-Server init.d]# service mysql stop
 Shutting down MySQL..[  OK  ]
[root@DB-Server init.d]# service mysql status
 MySQL is not running[FAILED]

clip_image002

 

2.2 方法2

[root@DB-Server init.d]# ./mysql status
 MySQL running (26215)[  OK  ]
[root@DB-Server init.d]# ./mysql stop
 Shutting down MySQL..[  OK  ]
[root@DB-Server init.d]# ./mysql status
 MySQL is not running[FAILED]
[root@DB-Server init.d]# 

clip_image003

[root@DB-Server init.d]# chkconfig --list | grep -i mysql
 
mysql 0:off 1:off 2:on 3:on 4:on 5:on 6:off
 
[root@DB-Server init.d]# 
 

 

3. 收集MySQL对应的文件夹信息

[root@DB-Server init.d]# whereis mysql

mysql: /usr/bin/mysql /usr/include/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

最好实用find命令查看MySQL数据库相关的文件,方便后面彻底删除MySQL。

[root@DB-Server init.d]# find / -name mysql
/etc/rc.d/init.d/mysql
/etc/logrotate.d/mysql
/var/lock/subsys/mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/include/mysql
/usr/include/mysql/mysql
/usr/bin/mysql
/usr/share/mysql
/usr/lib64/mysql

clip_image004

 

4: 卸载删除MySQL各类组件

[root@DB-Server init.d]# 
[root@DB-Server init.d]# rpm -ev MySQL-devel-5.6.23-1.linux_glibc2.5
[root@DB-Server init.d]# rpm -ev MySQL-server-5.6.23-1.linux_glibc2.5
You have new mail in /var/spool/mail/root
[root@DB-Server init.d]# rpm -ev MySQL-client-5.6.23-1.linux_glibc2.5
[root@DB-Server init.d]#

clip_image005

 

5:删除MySQL对应的文件夹

 

检查各个MySQL文件夹是否清理删除干净。

[root@DB-Server init.d]# whereis mysql
mysql:
[root@DB-Server init.d]# find / -name mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/lib64/mysql
[root@DB-Server init.d]# rm -rf /var/lib/mysql
[root@DB-Server init.d]# rm -rf /var/lib/mysql/mysql
[root@DB-Server init.d]# rm -rf /usr/lib64/mysql
[root@DB-Server init.d]# 

6:删除mysql用户及用户组

如果有必要,删除mysql用户以及mysql用户组。

[root@DB-Server ~]# more /etc/passwd | grep mysql
mysql:x:101:501::/home/mysql:/bin/bash
[root@DB-Server ~]# more /etc/shadow | grep mysql
mysql:!!:16496::::::
[root@DB-Server ~]# more /etc/group | grep mysql
mysql:x:501:
[root@DB-Server ~]# userdel mysql
[root@DB-Server ~]# groupdel mysql
groupdel: group mysql does not exist
[root@DB-Server ~]# 

 

7:确认MySQL是否卸载删除

[root@DB-Server init.d]# rpm -qa | grep -i mysql

 

二进制包/源码安装方式的MySQL卸载

如果是采用二进制包安装的MySQL,那么你用下面命令是找不到任何MySQL组件的。所以如果你不知道MySQL的安装方式,千万不要用下面命令来判别是否安装了MySQL

[root@DB-Server init.d]# rpm -qa | grep -i mysql

 

1: 检查MySQL服务并关闭服务进程

 

首先通过进程查看是否有MySQL的服务的状态, 如下所示,MySQL服务是启动的。

[root@DB-Server init.d]# ps -ef | grep mysql
root      4752  4302  0 22:55 pts/1    00:00:00 more /etc/init.d/mysql.server
root      7176     1  0 23:23 pts/1    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/DB-Server.localdomain.pid
mysql     7269  7176 15 23:23 pts/1    00:00:01 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/usr/local/mysql/data/DB-Server.localdomain.err --pid-file=/usr/local/mysql/data/DB-Server.localdomain.pid
root      7321  4302  0 23:23 pts/1    00:00:00 grep mysql
[root@DB-Server init.d]# /etc/init.d/mysql.server status
MySQL running (7269)[  OK  ]
[root@DB-Server init.d]# /etc/init.d/mysql.server stop
Shutting down MySQL..[  OK  ]
[root@DB-Server init.d]# /etc/init.d/mysql.server status
MySQL is not running[FAILED]
[root@DB-Server init.d]# 

clip_image006

 

2: 查找MySQL的安装目录并彻底删除

[root@DB-Server init.d]# whereis mysql
 
mysql: /usr/local/mysql
 
[root@DB-Server init.d]# find / -name mysql
 
/var/spool/mail/mysql
 
/usr/local/mysql-5.7.5-m15-linux-glibc2.5-x86_64/include/mysql
 
/usr/local/mysql-5.7.5-m15-linux-glibc2.5-x86_64/bin/mysql
 
/usr/local/mysql-5.7.5-m15-linux-glibc2.5-x86_64/data/mysql
 
/usr/local/mysql
 

clip_image007

[root@DB-Server init.d]# rm -rf /usr/local/mysql-5.7.5-m15-linux-glibc2.5-x86_64/
 
[root@DB-Server init.d]# rm -rf /usr/local/
 
[root@DB-Server init.d]# rm -rf /var/spool/mail/mysql
 
[root@DB-Server init.d]# 
 

 

3: 删除一些配置文件

配置文件一般有/etc/my.cnf 或/etc/init.d/mysql.server,视具体安装配置情况而定。

 

4:删除MySQL用户以及用户组

[root@DB-Server ~]# id mysql
 
uid=101(mysql) gid=501(mysql) groups=501(mysql) context=root:system_r:unconfined_t:SystemLow-SystemHigh
 
[root@DB-Server ~]# userdel mysql
 

 

参考资料:http://www.cnblogs.com/kerrycode/

本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接.

<think>我们正在处理一个关于在Linux系统中完全卸载MySQL的问题。根据用户的需求和提供的引用内容,我们需要整理出一个清晰的卸载步骤。同时,我们要注意引用内容中给出的命令,并确保命令的正确性和安全性。参考引用[1]和引用[2],我们可以总结出以下步骤:1.停止MySQL服务。2.卸载MySQL相关的软件包(包括服务器、客户端等)。3.清理残余的配置文件和数据文件。4.删除MySQL的数据目录和配置文件。下面,我们将按照这些步骤详细说明。###步骤1:停止MySQL服务首先,我们需要停止正在运行的MySQL服务。可以使用以下命令之一:```bashsudosystemctlstopmysql#适用于使用systemctl的系统#或者sudoservicemysqlstop#适用于使用service命令的系统```如果上述命令无效,也可以尝试使用mysqladmin命令来关闭:```bashsudomysqladmin-urootshutdown```###步骤2:卸载MySQL软件包接下来,使用包管理工具卸载MySQL相关的软件包。以Ubuntu/Debian系统为例(使用apt):```bashsudoapt-getremove--purgemysql-servermysql-clientmysql-common````--purge`选项表示同时删除配置文件。然后,清理不再需要的依赖包和配置文件:```bashsudoapt-getautoremovesudoapt-getautoclean```###步骤3:删除残余文件和目录卸载软件包后,可能还有一些残留的文件和目录需要手动删除。常见的包括:-MySQL的数据目录(通常为`/var/lib/mysql`)-MySQL的配置文件目录(通常为`/etc/mysql`)使用以下命令删除:```bashsudorm-rf/var/lib/mysqlsudorm-rf/etc/mysql```注意:`rm-rf`命令会直接删除目录及其所有内容,请谨慎操作。此外,还可以使用`find`命令查找系统中其他可能存在的MySQL文件或目录:```bashsudofind/-namemysql```根据查找结果,手动删除相关文件或目录(确保这些文件或目录确实属于MySQL且不再需要)。###步骤4:验证卸载卸载完成后,可以再次运行`find`命令检查是否还有MySQL文件残留:```bashsudofind/-namemysql```同时,尝试运行`mysql`命令,如果提示命令未找到,则说明卸载成功。###注意事项-上述步骤适用于Ubuntu/Debian系统。对于其他Linux发行版(如CentOS、Fedora等),卸载命令可能有所不同(例如使用`yum`或`dnf`)。-在删除文件和目录前,请确保已备份重要数据(如数据库文件)。-卸载过程中可能需要管理员权限(使用`sudo`)。§§相关问题§§1.如何在不同Linux发行版(如CentOS)中卸载MySQL?2.卸载MySQL后如何重新安装?3.卸载MySQL时如何备份数据库?</think>### Linux系统中完全卸载MySQL的步骤 以下是基于Ubuntu/Debian系统的完整卸载流程(其他发行版命令略有不同): 1. **停止MySQL服务** 先终止正在运行的MySQL进程: ```bash sudo systemctl stop mysql # 或 sudo service mysql stop ``` 2. **卸载MySQL软件包** 移除核心组件并清除配置: ```bash sudo apt-get remove --purge mysql-server mysql-client mysql-common ``` 3. **清理残余依赖** 自动移除不再需要的包: ```bash sudo apt-get autoremove sudo apt-get autoclean ``` 4. **删除残留文件** 手动清理关键目录: ```bash sudo rm -rf /var/lib/mysql # 数据库文件目录 sudo rm -rf /etc/mysql # 配置文件目录 ``` 5. **检查隐藏文件** 使用查找命令定位遗漏文件: ```bash sudo find / -name mysql # 查找所有mysql相关文件 ``` 根据输出结果手动删除(如 `/var/log/mysql` 日志目录) 6. **移除用户和组** 删除MySQL专用账户: ```bash sudo deluser mysql sudo delgroup mysql ``` 7. **清理APT缓存** 确保完全移除包信息: ```bash sudo apt purge 'mysql-*' # 清除所有mysql相关包缓存 ``` > **注意**: > - 执行 `rm -rf` 前务必备份重要数据 > - 对于CentOS/RHEL系统,需将 `apt-get` 替换为 `yum remove` > - 完成卸载后建议重启系统 ### 验证卸载效果 ```bash mysql --version # 应显示"command not found" sudo systemctl status mysql # 应显示"unit not found" ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值