如何在Linux下卸載MySQL數據庫呢? 下面總結、整理了一下Linux平台下卸載MySQL的方法。 MySQL的安裝主要有三種方式:二進制包安裝(Using Generic Binaries)、RPM包安裝、源碼安裝。對應不同的安裝方式,卸載的步驟有些不同。文章中如有不足或不對的地方,敬請指出或補充!
RPM包安裝方式的MySQL卸載
1: 檢查是否安裝了MySQL組件。
[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
如上所示,說明安裝了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]
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]#
[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
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]#
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]#
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
[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://blog.itblood.com/completely-uninstall-the-mysql-under-linux-graphic-tutorials.html