文章来自:http://www.2cto.com/database/201409/337035.html,我自己调整了一下。
CentOS下如何完全卸载MySQL?解决卸载不干净的问题
系统:CentOS 6.5,MySQL:MySql 5.6
这里主要解决使用rpm安装的卸载问题,安装方法见:CentOS安装mysql*.rpm提示conflicts with file from package的解决办法
虽然说这里的是使用rpm安装的卸载问题,我觉得使用yum方式安装的如果遇到相同的问题也一样适用。
查看已经安装的服务
rpm –qa|grep -i mysql
-i 作用是不区分大小写(ignore)
可以看到有两个安装包(我这边有4、5个已安装好的包,都卸了,用yum -y remove installedPackageName的方式卸载/删除比较好)
MySQL-server-5.6.19-1.linux_glibc2.5.x86_64.rpm
删除这两个服务(去掉后缀)
rpm –e MySQL-client-5.6.19-1.linux_glibc2.5.x86_64
查看残留的目录:
whereis mysql
然后删除mysql目录(不同人的目录可能不同按自己的来):
rm –rf /usr/lib64/mysql
删除相关文件:
rm –rf /usr/my.cnf(这个是MySQL启动时要加载的配置文件)
最关键的:
rm -rf /var/lib/mysql
如果这个目录如果不删除,再重新安装之后,密码还是之前的密码,不会重新初始化!
网上查了很久都没有文章提到这个,最后还是自己摸索找出来的。
卸载完成!怎么确定是不是真的卸载干净了呢?
(这里补充一下,如果是rpm安装的最好也要删除 /var/log/mysqld.log 文件,该文件存储着MySQL初次启动时生成的默认密码,当然不删也行,最后的那个默认密码才是最新的)
一是看安装输出:
如果没有卸载干净,安装server时输入只有两行:
卸载干净了安装输入如下(这个存在争议,我的完全按它的来再次安装时也是只有两行,但是确实要用新生成的临时密码才能登录):
最后一段中提示了重要信息,很多人因为不喜欢读英文,导致接下来不知道怎么操作(注意,这个每个人的情况不同,我的MySQL是5.7.19的,它生成的默认密码则保存在 /var/log/mysqld.log)
二就是安装完成,启动服务之后
使用命令:“mysql -uroot -p”输入你之前安装后设置的密码,看能不能登录,如果还可以登录,说明没有卸载干净(应该是没有删除 /var/lib/mysql)!