sudo apt-get
安装了MySQL。现在我需要将其从系统中删除。我该怎么做?
#1 楼
我假设您不再需要MySQL,并且已经备份了重要的数据库。我建议您备份重要的MySQL数据库。注意:您的所有mysql数据都会丢失。
首先请确保MySQL服务已停止。
sudo systemctl stop mysql
删除MySQL完全关联所有软件包。
sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
/var/lib/mysql。
sudo rm -rf /etc/mysql /var/lib/mysql
(可选)删除不必要的软件包。缓存。
sudo apt autoremove
#2 楼
以上所有解决方案都是正确的,但我会尝试使用sudo apt-get remove --purge mysql* sudo apt-get autoremove sudo apt-get autoclean
这将卸载所有与mysql相关的软件包。
评论
这是摆脱与mysql相关的一切的最简单/最简单的方法。尽管此处的通配符几乎可以匹配名称中带有“ mysq”的所有软件包,所以您可能需要指定sudo apt-get remove --purge -s'mysql *'来更具体。
–geerlingguy
2014年5月23日在18:52
其次是使用更具体的正则表达式。我最终使用了'^ mysql-'的正则表达式。最初,我打算运行mysql,但发现它捕获了大量无关的内容...例如:注意,为正则表达式'^ mysql *选择'mysql-testsuite' '注意,为正则表达式'^ mysql *'选择'mysql-server'注意,为正则表达式'^ mysql *'选择'mysql-server-core'注意,为正则表达式'^ mysql *'选择'mysqmail'注意,选择'正则表达式'^ mysql *'的mysqmail-pure-ftpd-logger'
– MaasSql
2015年3月11日在16:18
我尝试了此处和之后列出的所有命令,如果我在终端中键入“ mysql”并按两次Tab键,我仍然看到mysql出现了一些选项,这意味着什么吗? > mysql mysqld mysql_upgrade mysqlcheck mysql_install_db
– GoProCameraByGoPro
15年3月26日在20:45
这仅在我使用sudo apt-get -f autoremove时对我有用
–西蒙D
2015年10月21日,下午5:33
这给了我一些错误,例如E:找不到软件包mysql。我的安装似乎有点混乱。而且我什至无法重新安装它,这有点令人恐惧。
– phil294
16年8月3日在20:17
#3 楼
这将从ubuntu 15.04中删除mysql 5.6sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/mysql
评论
手动删除目录对我来说似乎是必要的(因此+1),也许因为我的目录是符号链接?
–乔纳森
15年12月13日在9:20
我觉得您的答案最简洁,所以我想在这里发表评论。我为mariadb做过类似的事情,但是我注意到我有一个悬挂的系统服务。我必须使用以下方法将其删除:superuser.com/a/936976/260852
–马里奥·奥利维奥·弗洛雷斯(Mario Olivio Flores)
16-9-28在14:28
谢谢,这也适用于Ubuntu 16.04上的mysql 5.7。
–已完成
18年1月22日在22:52
#4 楼
首先,您需要从服务中停止mysql服务器。sudo service mysql stop
然后可以使用purge命令卸载
sudo apt-get purge mysql-server mysql-client
注意:以上基于您的包裹清单。我已经安装了服务器和客户端。这将为您带来方便
评论
对我来说,停止MySQL服务是关键。我让它运行并不断出现错误:dpkg:不可恢复的致命错误,正在中止:fork失败:无法分配内存E:子进程/ usr / bin / dpkg返回了错误代码(2)停止MySQL,然后运行sudo dpkg- -configure -a,然后sudo apt-get remove --purge mysql *对我有用。
– tww0003
18年8月14日在14:44
#5 楼
我不太使用Ubuntu,但是我认为您应该尝试的是我所做的。我首先在命令行中键入以下内容:
sudo apt-get remove --purge mysql-server mysql-client mysql-common
,,然后在下面输入以下内容:
sudo apt-get autoremove
,最后键入:
sudo apt-get autoclean
。我发现它已被删除。
#6 楼
我忘记了MySQL的root密码,需要重新设置密码。我尝试了此操作,但没有成功,因为它一直说“无法写日志”或类似的内容。
我解决方案是从Ubuntu 13.10完全删除MySQL,然后重新安装。
sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo rm -rf /var/lib/mysql
我不得不运行最后一个命令,因为即使您尝试清除所有lib,Ubuntu有时也会保留一些库。
现在,我使用此命令安装MySQL服务器和客户端:
sudo apt-get install mysql-client mysql-server
#7 楼
当我尝试sudo apt-get purge mysql*
时不起作用。使用以下方法清除了mysql5:
sudo apt-get purge mysql-*
然后进行清理:
sudo apt-get autoremove
sudo apt-get autoclean
#8 楼
完全卸载mysql:sudo -i
service mysql stop
killall -KILL mysql mysqld_safe mysqld
apt-get --yes purge mysql*
apt-get --yes autoremove --purge
apt-get autoclean
deluser --remove-home mysql
delgroup mysql
rm -rf /etc/apparmor.d/abstractions/mysql /etc/apparmor.d/cache/usr.sbin.mysqld /etc/mysql /var/lib/mysql /var/log/mysql* /var/log/upstart/mysql.log* /var/run/mysqld ~/.mysql_history
updatedb
基于此答案以及许多其他信息...
#9 楼
尝试一下,它将完全清除系统中MySQL的每个文件:sudo service mysql stop #or mysqld
sudo killall -9 mysql
sudo killall -9 mysqld
sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
sudo deluser -f mysql
sudo rm -rf /var/lib/mysql
sudo apt-get purge mysql-server-core-5.7
sudo apt-get purge mysql-client-core-5.7
sudo rm -rf /var/log/mysql
sudo rm -rf /etc/mysql
评论
我想这行不通。完成这些步骤后,我尝试了:sudo apt-get install mysql-client-core-5.5。但是它表明:mysql-client-core-5.5已经是最新版本。 0升级,0新安装,0删除和97未升级..这是否意味着mysql仍驻留在我的PC中?
–蝙蝠侠
2012年8月6日9:35
如果我尝试sudo dpkg --purge mysql-server mysql-client mysql-common我得到:dpkg:警告:没有与mysql-server dpkg匹配的已安装软件包:警告:没有与mysql-client dpkg匹配的已安装软件包:警告:没有安装了与mysql-common匹配的软件包。我现在有点困惑。那个mysql已经被删除了吗?
–蝙蝠侠
2012年8月6日上午11:17
为什么还要同时删除xbmc和xbmc-bin?使用phpmyadmin浏览时,mysql中没有xbmc表。
– Redsandro
2014年1月16日17:47
这对我来说还不够,还需要做更多的事情:stackoverflow.com/a/16178696/447661
– Mihai Rotaru
2014年7月26日在21:07
这对我来说还不够-对我来说,这里的答案反而有效:stackoverflow.com/a/16178696/368896
–丹·尼森鲍姆(Dan Nissenbaum)
2015年10月9日在8:35