如何在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

作者:潇湘隐者
如果你真心觉得文章写得不错,而且对你有所帮助,那就不妨小小打赏一下吧,如果囊中羞涩,不妨帮忙“推荐"一下,您的“推荐”和”打赏“将是我最大的写作动力!
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接.

Linux->卸载Mysql方法总结的更多相关文章

  1. windows客户端远程访问linux下mysql方法

    windows客户端远程访问linux下mysql方法 1. 改表法.可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑,登入mysql后,更改 &q ...

  2. linux卸载mysql误删mysql.pm

    操作步骤如下 linux卸载mysql:yum remove mysql 查找mysql所有的文件并删除: 查找:find / -name mysql 删除:rm -rf xxx 误操作删除mysql ...

  3. linux卸载mysql,apache,php

    卸载Mysql 1.查找以前是否装有mysql 命令:rpm -qa|grep -i mysql 可以看到mysql的包: mysql-3.23.58-9php-mysql-4.3.4-11mod_a ...

  4. Linux卸载MySql——ubuntu版

    卸载mysql 1)删除mysql的数据文件 sudo rm /var/lib/mysql/ -R 2)删除mqsql的配置文件 sudo rm /etc/mysql/ -R 3)自动卸载mysql的 ...

  5. 【转】linux卸载mysql

    查看是否安装了MySQL执行命令rpm -qa | grep mysql 执行过程[root@localhost ~]# rpm -qa | grep mysqlmysql-community-lib ...

  6. linux 卸载mysql

    RPM包安装方式的MySQL卸载 1: 检查是否安装了MySQL组件. [root@DB-Server init.d]# rpm -qa | grep -i mysql   MySQL-devel-5 ...

  7. Linux 卸载 MySQL 数据库

    1. 使用以下命令查看当前安装mysql情况 rpm -qa|grep -i mysql 显示之前安装过的数据库 2. 停止mysql服务.删除之前安装的mysql 删除命令: rpm -ev 包名若 ...

  8. linux卸载mysql

    第二.停止MYSQL运行以及卸载老版本 service mysqld stop #暂停MYSQL yum remove mysql mysql-*  #卸载老版本MYSQL 通过上面的命令,我们先停止 ...

  9. ubuntu下安装mysql及卸载mysql方法

    1. 删除mysql a. sudo apt-get autoremove --purge mysql-server-5.0 b. sudo apt-get remove mysql-server c ...

  10. mac下彻底卸载mysql方法

    sudo rm /usr/local/mysqlsudo rm -rf /usr/local/mysql*sudo rm -rf /Library/StartupItems/MySQLCOMsudo ...

随机推荐

  1. Unity 之 图片显示的真实大小

    图片放入Unity中自身的属性 在做帽子游戏的时候,看到这么一段代码 //获取保龄球的自身宽度 float ballWidth=ball.GetComponent<Renderer>(). ...

  2. [不屈的复习] - http://how2j.cn/

    http://how2j.cn/ 该教程网站分得比较规整!

  3. MariaDB / MySQL数据类型

    MariaDB / MySQL 数据类型 有三种主要的类型:Text(文本).Number(数字)和 Date/Time(日期/时间)类型. Text 类型: 数据类型 描述 CHAR(size) 保 ...

  4. mysql时间格式化函数日期格式h和H区别

    本文为博主原创,未经允许不得转载: 今天碰到一个问题,发现项目中有一个统计图的数据和时间格式没有对应准确,统计图要描述的是操作次数和操作时间的关系, 但很奇怪的是操作次数对应的时间却是凌晨,实际应用中 ...

  5. 12_Python操作MySQL(basic)

    """ Test connection to MySQL using mysql-client conn = MySQLdb.connect(host,port,user ...

  6. 记一次诡异的bug

    使用django做项目,在视图函数中需要查询,查询前构造一个查询参数的模型来过滤参数防止报错,然后调用模型的方法返回一个字典,包括了所有查询的字段和值,发现只要查询过一次之后,后续的访问查询结果会在之 ...

  7. FAILED Selenium2Library

    FAILED Selenium2Library Importing test library 'Selenium2Library' failed: ImportError: cannot import ...

  8. 【Django】【待解决问题】

    1. from Crypto.Cipher import AES File "/Library/Frameworks/Python.framework/Versions/3.5/lib/py ...

  9. async 和 await的前世今生 (转载)

    async 和 await 出现在C# 5.0之后,给并行编程带来了不少的方便,特别是当在MVC中的Action也变成async之后,有点开始什么都是async的味道了.但是这也给我们编程埋下了一些隐 ...

  10. Java中的hashcode方法

    一.hashCode方法的作用 对于包含容器类型的程序设计语言来说,基本上都会涉及到hashCode.在Java中也一样,hashCode方法的主要作用是为了配合基于散列的集合一起正常运行,这样的散列 ...