我有一个使用 Flyway 来管理他们的 MySQL Schema 的产品。我需要在 Azure MySQL 中打开复制。当我启用 MySQL 复制时,Flyway 脚本失败。
我正在寻找社区中可能遇到过这种情况的人,以提供他们的经验和/或有关如何在允许 Flyway 管理架构的同时打开复制的一些指导。
更多细节:问题是 Flyway 需要 MySQL 设置log_bin_trust_function_creator
为 ON 才能执行。Azure 中的复制将其关闭。原因是为了防止本 Microsoft Doc中提到的数据损坏风险。
引用:
为防止数据不同步并避免潜在的数据丢失或损坏,在使用只读副本时,某些服务器参数被锁定以防更新。以下服务器参数在源服务器和副本服务器上都被锁定:
innodb_file_per_table
log_bin_trust_function_creators