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

高性能Mysql数据库表设计原则
原文:http://blog.163.com/gyq_beijing/blog/static/11240437420118293037831/

1 更小通常更好


   理由:更小的数据类型使用了更小的磁盘空间,内存和cpu缓存,而且需要的cpu周期也更少。

2 简单就好

 

这个好理解,尽可能选择简单的数据类型存储数据,mysql的数据类型不外乎int,long,char,varchar,text等等。那么在选择的时
候,尽量选择最简单的基本数据      类型存储数据。比如我平常存储时间的时候一般都是存成int类型(转化成timestamp).

3 尽量避免null


   理由:Mysql 难以优化引用了可空列的查询,空列会使索引,索引统计和值更加复杂,可空列需要更多的存储空间。一般来说,设置默认值(DEFAULT)是个比较好    的习惯。当然该条对Mysql表性能的提升影响不是很大,不应放在最优先考虑的地位。

综上所述,我们在设计一个Mysql数据表的时候:

第二步:确定特定的类型,比如说 :数字里有tinyint,smallint,int,long等,选择最合适的一个(更小通常更好)

当然,索引优化肯定是必不可少的,不过这属于设计表完成之后的优化范围了。