1

I have been trying to remove all the package.

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

But after apt-get remove --purge mysql*, they need me to run apt --fix-broken install first

Try to remove mariadb apt-get remove --purge mariadb* and get

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

Try to start mysql and get this

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

What should i do to remove all of it?

dionajie
  • 159
  • 2
  • 2
  • 10
  • what if you reinstall and then remove and purge? like `sudo apt-get install -y mysql-server && sudo apt-get remove -y --purge mysql*`, then with mariadb the same as `sudo apt-get install -y mariadb-server && sudo apt-get remove -y --purge mariadb-server`. I think mysql and mariadb install the same binary files ( mariadb is a drop-in replacement), so it will complain on the service on the second remove. – bistoco Nov 09 '18 at 07:22
  • @bistoco it said `You might want to run 'apt --fix-broken install' to correct these. The following packages have unmet dependencies: mariadb-server-10.3 : PreDepends: mariadb-common (>= 1:10.3.10+maria~bionic) but it is not going to be installed Depends: mariadb-client-10.3 (>= 1:10.3.10+maria~bionic) but it is not going to be installed Depends: mariadb-server-core-10.3 (>= 1:10.3.10+maria~bionic) but it is not going to be installed E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution). ` – dionajie Nov 09 '18 at 07:31
  • @bistoco and install mariadb again but get error at `Failed to start mysql.service: Unit mysql.service not found. invoke-rc.d: initscript mysql, action "start" failed. ` – dionajie Nov 09 '18 at 07:31
  • [Try this](https://askubuntu.com/a/948428/260379), is using `dpkg` and forcing the uninstall. – bistoco Nov 09 '18 at 07:39
  • @bistoco i did `sudo dpkg --purge --force-all package-name`. For some package is succeced. then i execute `dpkg -l | grep -e mysql -e mariadb`, "mariadb-serber-10.3" is still there – dionajie Nov 09 '18 at 07:51
  • when i execute `sudo dpkg --purge --force-all mariadb-server-10.3`, it said `Failed to stop mysql.service: Unit mysql.service not loaded. invoke-rc.d: initscript mysql, action "stop" failed. dpkg: error processing package mariadb-server-10.3 (--purge): installed mariadb-server-10.3 package pre-removal script subprocess returned error exit status 1 /usr/bin/deb-systemd-helper: error: unable to read mariadb.service` – dionajie Nov 09 '18 at 07:52

3 Answers3

3

Try this:

  1. Purge mariadb

    sudo apt purge mariadb-*
    

    Remove all databases ('Yes' answer)

  2. Purge mysql

    sudo apt purge mysql-*
    

    Remove all databases ('Yes' answer)

  3. Remove mariadb repo from /etc/apt/sources.list

    Find something like this:

    deb [arch=amd64,arm64,ppc64el] http://mariadb.mirror.globo.tech/repo/10.4/ubuntu bionic main
    
  4. Remove folders:

    sudo rm -r /usr/share/mysql/
    sudo rm -r /etc/mysql/
    sudo rm -r /lib/systemd/system/mysql.service
    
  5. Now you can try to install oracle mysql:

    sudo apt install mysql-server
    
Zanna
  • 69,223
  • 56
  • 216
  • 327
2

I had success dealing with a similar problem by following the some of the steps listed in this post.

  1. Detect all MariaDB and MySQL packages

    apt search mariadb | grep "\[install"
    

    and

    apt search mysql | grep "\[install"
    

Unfortunately, before I was able to do the next step, I had to remove the various mariadb.service files, so that dpkg was able to remove the mariadb-server-10.3 package properly. Otherwise, it seems to be assuming there's a running service, and when it's unable to stop it (because the symlink is broken), it errors out.

I found mariadb.service in /etc/systemd/system and /etc/systemd/system/multi-user.target.wants

  1. Force uninstall of all MariaDB and MySQL packages (server, client, libs) to clean the mess

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

For the "Step 4" of that post, I swapped the order of the commands to remove the unneeded packages first:

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

And then I was able to reinstall per the normal

sudo apt install mariadb-server

Hope that helps.

Zanna
  • 69,223
  • 56
  • 216
  • 327
1

You can completely uninstall mysql / mariadb as follow:

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

The purge is identical to remove, except that packages are removed and purged (any configuration files are deleted too)

PYK
  • 261
  • 3
  • 5