MySQL key_len

当前mysql版本是5.7.14,我们约定在 InnoDB 存储引擎下分析该问题。

这里着重解释一下key_len,因为关于在列的长度以及联合索引时,可能需要从ken_len上进行分析。这里有篇文章是比较好的https://www.cnblogs.com/zhoujinyi/p/3784450.html。

其他的可以在平常工作中测试实践。

这里补充两点:

1、首先int类型为什么是key_len是4呢,因为int类型mysql是使用4个字节存储,同理bigint是使用8个字节存储,所以key_len是8。

2、int、bigint这些数据类型对其赋予位数是没有意义的,即`id` int(12) NOT NULL,这个12是没有意义的,id列最大也只能保存999999999。

 

你可能感兴趣的:(mysql)