Ubuntu下彻底卸载MySQL

前言

真是被 Ubuntu 环境下的 MySQL 折磨的够呛。一次安装终身不改还好,卸载想重装其它版本?那各种报错可就来了,多数就是因为没卸干净。特写篇博客重点突出彻底二字!

开整

sudo apt-get remove mysql 就 OK 了?太年轻~

sudo dpkg --purge mysql-client-core-5.5
sudo dpkg --purge mysql-client
sudo dpkg --purge mysql-server-core-5.5
sudo dpkg --purge mysql-common # 依赖包放到最后清除
# sudo dpkg --purge mysql # 两次tab键是可以补全的命令的

sudo apt-get --purge remove mysql-server-5.5
sudo apt-get --purge remove mysql-client-5.5
sudo apt-get --purge remove mysql-common

# MySQL已经被卸载,依赖安装的软件就无用了(比如一些库)
# 该命令会自动清除这些无用依赖
sudo apt-get autoremove
sudo apt-get autoclean # 删除无用的安装文件(.deb)

sudo rm -rf /var/lib/mysql /etc/mysql ~/.mysql # 删除残留的文件
find / -name mysqld # 找到残留的mysqld文件,然后删删删

sudo deluser --remove-all-files mysql # 删除mysql用户所拥有的全部文件

# 重装之前
sudo dpkg --configure -a # 重新配置一下 dpkg
sudo apt-get update # 更新软件包信息列表

# 检查是否真的彻底了
which mysql # 彻底的话会返回一个空结果。如果还有就把出来的那个结果再删了(不要怂,就是删!)
mysql --version # 彻底的话,会提示 mysql 尚未安装,请求安装的类似字样。如果不是就看看有没有漏掉什么

我一开始真是乱删一通,恨不得把带 mysql 几个字的都给删了(但这种行为很不理智~请勿模仿)。
这一套下来,还不 OK!就只能用那句老话了:重装系统吧~233

# 由这个问题,引出了如何搜索文件或目录
locate -e file_name
# 由于默认是模糊查询且列出查询结果的绝对路径,所以文件或目录是无所谓的;
# 该命令是建立一个索引库,无参数使用就是从库里搜索结果(与Win下的Everything类似);
# 索引库默认每天更新一次,也可使用updatedb命令手动更新;
# 参数e代表仅列出当前系统中存在的结果,所以通常都会加上。

# 或者使用 find
# 从根目录'/'开始,搜索出所有含有file_name的路径。
sudo find / -name file_name

心得体会

Linux 下不理解的操作最好不要直接搞(例如执行某些命令,或删除某些文件),不然就是自己给自己挖坑!不信你试试:sudo rm -rf /* : ) 逃。

推荐阅读


参考资料

[1] Unable to set password for the mysql “root” user

手滑了就鼓励一下吧~