InnoDB最大密钥长度

时间:2011-10-01 17:54:34

标签: mysql innodb

这是一个相当直接的问题,但我在查找一个明确的答案谷歌时遇到了问题。在MySQL 5.1.53上,使用InnoDB和varchar(1024)字段(我正在索引Exchange 2010事件ID)。我想知道当我索引这个字段时最大密钥长度是多少。我想知道如果密钥长度不够长,我是否应缩短字段并使用sha512哈希值。

1 个答案:

答案 0 :(得分:6)

InnoDB内部最大密钥长度为3500字节,但MySQL本身将此限制为3072字节。此限制适用于多列索引中组合索引键的长度。

并且,如上所述:

单列索引的索引键最多可达767个字节。相同的长度限制适用于任何索引键前缀。请参见第12.1.13节“CREATE INDEX语法”。

http://dev.mysql.com/doc/refman/5.1/en/innodb-restrictions.html