0

I have the need to install mysql 5.6 on a 16.04 machine because the provided 5.7 is not compatible with the application I'm deploying.

I followed this approach that seemed to be working, until I had to set some variables in the my.cnf file. I noticed the whole [mysqld] section was missing, and creating one was of no help.

So, further investigating,

dpkg -l | grep mysql

showed that I had most mysql packages version 5.6 except mysql-common, which came from the main xenial repo so it was 5.7, and installing mysql-common-5.6 would raise a conflict between the two and would not allow me to install it.

Since the description of the package is

MySQL database common files, e.g. /etc/mysql/my.cnf

I can imagine it's the reason why I'm having issues with my.cnf and related files. Any idea how I could force mysql-common-5.6 to be installed instead of mysql-common?

Thanks in advance

TheVet
  • 83
  • 1
  • 8

1 Answers1

0

As I found trying multiple roads, I answered my own question, but since it took a while, i figured it would be better to answer it instead of deleting the question.

First off, remove all mysql packages and files (backup the important ones):

apt purge mysql*
apt autoremove
apt autoclean
rm -rf /etc/mysql/

You should now be clean.

Now go here and download the version you need, it contains all the dependencies except libaio1, so:

apt install libaio1
tar -xvf downloadedMysqlPackage.tar
dpkg -i mysql-common-xxx.deb
dpkg-preconfigure mysql-community-server-xxx.deb
dpkg -i mysql-community-server-xxx.deb
dpkg -i mysql-community-client-xxx.deb
dpkg -i libmysqlclient18-xxx.deb

And you're good to go!

TheVet
  • 83
  • 1
  • 8