MySQL中的索引大小
我刚开始调查我的MySQL数据库的优化。 从我正在阅读的内容来看,索引似乎是一个好主意 - 所以我想要在使用MyISAM
引擎的表上的一个VARCHAR
列上创建索引。
从我正在阅读的内容中,我了解索引被限制为1,000字节的大小。 不过, VARCHAR
字符的大小为3个字节。 这是否意味着如果我想用50行索引VARCHAR
列,我需要一个6个字符的索引前缀? (1,000字节/ 50行/每字符3字节= 6.66)
如果是这样,那似乎有点相似 - 这就是为什么我质疑我的理解。 看起来很奇怪,您只能使用1个字符的前缀在VARCHAR
列中索引333行。
我错过了什么吗?
从我读过的内容来看,我知道一个索引被限制为1000字节的大小。
索引关键字长度限制在MyISAM
1000
个字节, InnoDB
767
个字节(每列)。
这意味着你不能索引MyISAM
表中长度超过333
字符的单个UTF8
列(当计算最大索引大小时, MySQL
假定每个字符有3
个字节,尽管实际长度可能会小得多)
您可以根据需要创建尽可能多的索引记录。
我认为它的意思是varchar的宽度。 如果索引最大大小是1000字节,并且varchar是3个字节长,那么最大索引大小将是1000/3。
链接地址: http://www.djcxy.com/p/45281.html上一篇: Index sizes in MySQL