作为我们构建过程的一部分,我们使用该mysqldiff
实用程序(从 maven 调用)通过将新构建的模式副本与从基线和我们的迁移脚本创建的模式版本进行比较来验证我们的数据库迁移脚本。这一切都适用于 MySQL 5.7。
我们正在寻求升级到 MySQL 8.0.13。数据库用户已配置为使用mysql_native_password
. 当我们运行构建时,我们从以下位置收到此错误mysqldiff
:
ERROR: Authentication plugin 'caching_sha2_password' is not supported
我们知道这个错误是由于该实用程序使用的是旧版本的 mysql-python-connector。我们也知道答案可能与升级连接器版本一样简单,但我们不知道如何尝试。
MySQL 实用程序可以在https://github.com/mysql/mysql-utilities找到。
在 Windows 10 上,我们使用 Oracle Windows 安装程序进行安装。在 Amazon Linux 上,我们使用 yum 安装。
笔记:
- MySQL 实用程序似乎基于嵌入式 python2.7 安装(我们没有在任何开发或构建机器上安装独立的 python)。
- 我们没有 python 专业知识,所以如果我们正在处理嵌入式 python 的东西,详细的步骤会很有帮助。
- 我们需要在 Windows 10 和 Amazon Linux 上解决这个问题。
我们如何解决此错误,以便我们可以在 Windows 10 和 Amazon Linux 上将 mysqldiff 与 MySQL 8.0.13 服务器一起使用?
如果答案只是升级连接器,那么详细的步骤是什么?
我们可以进行服务器安装/配置更改以支持客户端连接旧驱动程序吗?