[42000][1071] Specified key was too long; max key length is 767 bytes MySQL创建唯一索引时报错

[42000][1071] Specified key was too long; max key length is 767 bytes

MySQL在创建一个字符串类型的唯一索引时报错如上。

已知MySQL引擎是innodb,编码是utf8mb4。

上边的报错信息很明显 指定的key太长,最大的长度为767个字节。

utf8mb4编码下一个字符占4个字节长度。

所以字段的长度不能超过767/4=191。