日期:2014-05-16  浏览次数:20658 次

mysql 建表时,我们应该考虑的数据类型

本文是由《高性能mysql》摘录而来

?

如何选择最优的数据类型,请看下面几个原则

(1)更小通常更好

?????? 好处:占用更少磁盘、内存和cpu缓存,处理时需要的cpu周期更少

?

(2)简单就好

????? 简单数据类型通常需要更少的cpu周期,例子:用mysql内建日期类型(date,dateTime,timestample)而不是字符串来存储日期,用整型存储ip

?

(3)尽量避免null

?????? null的列不容易进行查询优化;null列需要更多的存储空间(mysql做特殊处理);null列被索引时,每个索引需要一个额外的字节,在myisam里还可能会导致固定大小的索引。

?????? 如果计划在该列上建立索引,那么,建议避免设置null