最近,我们将一个系统更新为Ubuntu20.04(它是一个后台系统)。新安装包括版本8的MySQL。
我们在即将退役的系统上执行的一个功能是备份一个由主机提供商拥有的MySQL远程数据库,该数据库运行MySQL 5.x。令我惊讶的是,MySQL 8客户端似乎不会连接到MySQL 5数据库,原因是这只虫子:
> mysqldump --host=${REMOTE_HOST} --user=${REMOTE_USER} ${REMOTE_DATABASE}
mysqldump: Got error: 1043: Bad handshake when trying to connect我很好奇在这种情况下其他人是如何处理这个问题的。
升级远程数据库不是我们可以做的事情(远程数据库由另一个不提供MySql 8的机构管理),也不是降低本地数据库的级别( MySQL8的优势是我们升级的原因之一)。
我真正想做的是,只将mysql 5客户端安装到另一个文件夹中,并且只对此连接和任务使用来自该文件夹的mysqldump (也是mysql)。但似乎没有正式的UBUNTU方式来做到这一点。
我已经看过(甚至安装了)db部署程序,但这看起来像是另一个耗费时间的研究项目,它有自己的学习曲线来获得它。也许是为了我们想要完成的小事而过度杀戮。
对此有什么建议吗?显然,这不是MySQL开发人员的优先事项,而是我们的优先事项。
发布于 2021-02-24 04:10:41
尝试最后的LTS发行版,目前仿生版似乎有MySQL 5.7。或者是Ubuntu容器。或者MySQL的5.7容器,它似乎也是基于Debian的。
如果您希望继续使用流行的程序包,通常使用旧版本安装另一个操作系统会更容易。两个版本并排并不总是容易的。
您总是可以升级或迁移。定义一个升级此MySQL数据库的计划(尽管您没有说明哪个5.x主要版本)。MySQL 5.6在甲骨文扩展支持上,没有那么多年可以活了。旧版本已经过时了。
https://serverfault.com/questions/1054823
复制相似问题