从 Ubuntu 中彻底删除 Mariadb 10.3 和 Mysql

从 Ubuntu 中彻底删除 Mariadb 10.3 和 Mysql

我一直试图删除所有的包。

apt-get remove --purge mysql*
apt-get remove --purge mysql
apt-get remove --purge mariadb
apt-get remove --purge mariadb*
apt-get --purge remove mariadb-server
apt-get --purge remove python-software-properties

但之后apt-get remove --purge mysql*他们需要我 apt --fix-broken install先跑

尝试删除 mariadbapt-get remove --purge mariadb*并获取

`Failed to stop mysql.service: Unit mysql.service not loaded.`
/usr/bin/deb-systemd-helper: error: unable to read mariadb.service

尝试启动 mysql 并得到这个

Failed to start mysql.service: Unit mysql.service not found.

我该怎么做才能将其全部删除?

答案1

尝试这个:

  1. 清除 mariadb

    sudo apt purge mariadb-*
    

    删除所有数据库(回答‘是’)

  2. 清除 mysql

    sudo apt purge mysql-*
    

    删除所有数据库(回答‘是’)

  3. 从 删除 mariadb repo/etc/apt/sources.list

    找到类似这样的内容:

    deb [arch=amd64,arm64,ppc64el] http://mariadb.mirror.globo.tech/repo/10.4/ubuntu bionic main
    
  4. 删除文件夹:

    sudo rm -r /usr/share/mysql/
    sudo rm -r /etc/mysql/
    sudo rm -r /lib/systemd/system/mysql.service
    
  5. 现在可以尝试安装 oracle mysql:

    sudo apt install mysql-server
    

答案2

我按照列出的一些步骤成功解决了类似的问题这个帖子

  1. 检测所有 MariaDB 和 MySQL 包

    apt search mariadb | grep "\[install"
    

    apt search mysql | grep "\[install"
    

不幸的是,在执行下一步之前,我必须删除各种mariadb.service文件,这样dpkg才能mariadb-server-10.3正确删除包。否则,它似乎假设有一个正在运行的服务,当它无法停止它时(因为符号链接已损坏),它会出错。

mariadb.service发现/etc/systemd/system/etc/systemd/system/multi-user.target.wants

  1. 强制卸载所有 MariaDB 和 MySQL 软件包(服务器、客户端、库)以清理混乱

    sudo dpkg --force depends --purge <package> <package> ...
    

对于该帖子的“步骤 4”,我交换了命令的顺序以首先删除不需要的包:

sudo apt autoremove
sudo apt-get --fix-broken install

然后我就可以按照正常方式重新安装

sudo apt install mariadb-server

希望有所帮助。

答案3

您可以完全卸载mysql/mariadb如下:

sudo apt-get purge mariadb-server mariadb-* mysql-*

清除等同于消除,除了软件包被删除和清除(所有配置文件也被删除)

相关内容