Airtable 的 MySQL 8.0 升级之旅
自 5.6 版以来,新增了许多关键字和保留字(https://dev.mysql.com/doc/refman/8.0/en/keywords.html#keywords-new-in-current-series)。我们的一个表中有一列名为
grouping
,但在 8.0.1 中GROUPING
变成了保留字。我们对代码进行了调整,找出所有受影响的查询,并添加了反引号来转义列名。8.0 中的用户管理与 5.6 不兼容。这是我们自己造成的问题,因为我们跳过了 5.7(作为桥接版本),而且我们试图直接从 5.6 主节点到 8.0 从节点。我们试图通过仅使用这两个版本共有的功能部分来解决这个问题,但由于添加新 MySQL 用户的操作比较少见,最终我们决定不深究这个兼容性问题。