Having trouble installing and removing MySQL in Ubuntu
Solution 1
A very simple solution which I (the linux noob) had to dig up... is to create the file.
nano /etc/mysql/my.cnf.fallback
and fill it with the default content from the mysql-common 5.7.11-0ubuntu6 package.
#
# The MySQL database server configuration file.
#
# You can copy this to one of:
# - "/etc/mysql/my.cnf" to set global options,
# - "~/.my.cnf" to set user-specific options.
#
# One can use all long options that the program supports.
# Run program with --help to get a list of available options and with
# --print-defaults to see which it would actually understand and use.
#
# For explanations see
# http://dev.mysql.com/doc/mysql/en/server-system-variables.html
# This will be passed to all mysql clients
# It has been reported that passwords should be enclosed with ticks/quotes
# escpecially if they contain "#" chars...
# Remember to edit /etc/mysql/debian.cnf when changing the socket location.
# Here is entries for some specific programs
# The following values assume you have at least 32M ram
!includedir /etc/mysql/conf.d/
found here at apt-browse.org
Solution 2
Purge/Reinstall also did not work for me. I found the following "solution":
I could not find mysql.cnf.fallback
listed in the "provided files" for mysql-server-5.6
/ mysql-client-5.6
nor any additional info about the file.
I copied /etc/mysql/my.cnf
to /etc/mysql/my.cnf.fallback
(guessing that this would have been a relatively less important "fallback" config file);
/etc/mysql/my.cnf
is a symlink, so ls /etc/mysql
now shows:
my.cnf.fallback -> /etc/alternatives/my.cnf
my.cnf -> /etc/alternatives/my.cnf
The installation of the package then completed without error (since presumably the "doesn't exist" issue was "solved").
I have not come across any adverse effects (yet).
Solution 3
I had the same problem while trying to purge mysql-server (5.7.14).
In case that the my.cnf* files are missing, you can re-install the package mysql-common, and afterwards, you can purge both (mysql-server & mysql-common)
These my.cnf* files belong to mysql-common package (see bellow):
$ dpkg -L mysql-common | grep cnf
/etc/mysql/my.cnf.fallback
/etc/mysql/conf.d/mysql.cnf
1. Re-install mysql-common
apt-get install --reinstall mysql-common
- Purge mysql-common
apt-get purge mysql-common
Solution 4
Confirmed. Order matters.
apt remove mysql-* mariadb-* --purge
apt install mysql-common
apt install mariadb-common
apt install mariadb-server
Solution 5
As noted by charneykaye in the comments, this approach can fail if there's some mysql
processes in the background. I used:
emil-mint-desktop ~ # ps -aef | grep mysql
root 6682 1 0 16:45 ? 00:00:00 sudo mysqld_safe --skip-grant-tables
root 6683 6682 0 16:45 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --skip-grant-tables
mysql 7046 6683 0 16:45 ? 00:00:01 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --skip-grant-tables --log-error=/var/log/mysql/error.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --port=3306 --log-syslog=1 --log-syslog-facility=daemon --log-syslog-tag=
root 21046 9812 0 17:32 pts/5 00:00:00 grep --color=auto mysql
Killed the first 3 processes (the last one is the grep
call itself!) using:
kill -9 6682 8883 7046
Then remove everything mysql
related:
apt remove --purge mysql-\*
apt autoremove
apt autoclean
and then install:
apt install mysql-server
Then it worked.
Versions:
- Mint 18.1 (based on Ubuntu). You will need to substitute
apt
forapt-get
for some other versions.
Related videos on Youtube
Shameerariff
Updated on September 18, 2022Comments
-
Shameerariff over 1 year
I have trouble in installing or removing the partly installed mysql-server-5.6 in ubuntu15.04. The error I am getting was
$ sudo apt-get -f install Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: mysql-server-5.6 The following packages will be upgraded: mysql-server-5.6 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 22 not fully installed or removed. Need to get 0 B/5,501 kB of archives. After this operation, 50.8 MB of additional disk space will be used. Do you want to continue? [Y/n] Preconfiguring packages ... Setting up mysql-common (5.6.24-0ubuntu2) ... update-alternatives: error: alternative path /etc/mysql/my.cnf.fallback doesn't exist dpkg: error processing package mysql-common (--configure): subprocess installed post-installation script returned error exit status 2 Errors were encountered while processing: mysql-common localepurge: Disk space freed in /usr/share/locale: 0 KiB localepurge: Disk space freed in /usr/share/man: 0 KiB localepurge: Disk space freed in /usr/share/gnome/help: 0 KiB localepurge: Disk space freed in /usr/share/omf: 0 KiB localepurge: Disk space freed in /usr/share/doc/kde/HTML: 0 KiB Total disk space freed by localepurge: 0 KiB E: Sub-process /usr/bin/dpkg returned an error code (1)
Can someone help me on this?
-
Shameerariff over 8 yearsThis sounds great but can you explain the reason for the problem, It would be beneficial for others.
-
Dave Kincaid over 7 yearsThis was exactly my problem. This fixed it for me.
-
devius over 6 yearsThis is a better answer than the accpeted one because it fixes the actual problem without having to use the brute force approach.
-
oalders over 5 yearsIn my case
touch /etc/mysql/my.cnf.fallback
got me past the issue. -
cantsay over 2 yearsThank you. This solved it for me and should be the anwser.