У меня есть потребность установить mysql 5.6 на 16,04 машинах, потому что обеспеченные 5.7 не совместимы с приложением, которое я развертываю.
Я следовал за этим подходом, который, казалось, работал, пока я не должен был устанавливать некоторые переменные в my.cnf файле. Я заметил целое [mysqld], раздел отсутствовал и создавал, каждый не имел справки.
Так, далее исследование,
dpkg -l | grep mysql
показал, что у меня была большая часть mysql версии 5.6 пакетов кроме mysql-общего, который прибыл из основного гостеприимного repo, таким образом, это было 5.7, и устанавливающий mysql-common-5.6 повысит конфликт между двумя и не позволил бы мне устанавливать его.
Так как описание пакета
Общие файлы базы данных MySQL, например,/etc/mysql/my.cnf
Я могу предположить, что это - причина, почему у меня есть проблемы с my.cnf и связанными файлами. Какая-либо идея, как я мог вынудить mysql-common-5.6 быть установленным вместо mysql-общего?
Заранее спасибо
Когда я обнаружил, что пробовал несколько дорог, я ответил на свой собственный вопрос, но, поскольку это заняло некоторое время, я решил, что было бы лучше ответить на него, а не удалять вопрос.
Прежде всего, удалите все пакеты и файлы mysql (сделайте резервную копию важных):
apt purge mysql*
apt autoremove
apt autoclean
rm -rf /etc/mysql/
Теперь вы должны быть чистыми.
Теперь иди сюда и скачай нужную версию, она содержит все зависимости, кроме libaio1, поэтому:
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
И все готово!