MySQL 8.4 发行说明
如果您在使用 ALTER TABLE 更改字符列的字符集或排序规则时遇到重复键错误,原因可能是新列排序规则将两个键映射到相同的值,或者表已损坏。在后一种情况下,您应该对表运行 REPAIR TABLE。 REPAIR TABLE 对 MyISAM、ARCHIVE 和 CSV 表有效。
如果您对事务性表使用 ALTER TABLE,或者如果您使用的是 Windows,那么如果您已经对表进行了 LOCK TABLE,ALTER TABLE 会解锁该表。这是因为 InnoDB 和这些操作系统无法删除正在使用的表。