我需要在 16.04 机器上安装 mysql 5.6,因为提供的 5.7 与我正在部署的应用程序不兼容。
我跟着这这种方法似乎有效,直到我必须在 my.cnf 文件中设置一些变量。我注意到整个 [mysqld] 部分都丢失了,创建一个也无济于事。
因此,进一步调查,
dpkg -l | grep mysql
显示我拥有的大多数 mysql 包都是 5.6 版本,除了 mysql-common,它来自主 xenial repo,所以是 5.7 版本,而安装 mysql-common-5.6 会引起两者之间的冲突,并且不允许我安装它。
由于包的描述是
MySQL 数据库公共文件,例如 /etc/mysql/my.cnf
我可以想象这就是我遇到 my.cnf 和相关文件问题的原因。您知道如何强制安装 mysql-common-5.6 而不是 mysql-common 吗?
提前致谢
答案1
当我尝试多种方法时,我回答了我自己的问题,但由于花费了一段时间,我认为回答它而不是删除问题会更好。
首先,删除所有 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
您可以出发了!