mysql字段数量和一些最大限制:

mysql最多可以多少个字段?

答:1024个字段

mysql每行的数据长度最大是多少?

答:8092字节

mysql每个库最多可以有多少个表?

答:20亿个表

mysql的查询速度会被字段数量影响吗?有没有简单点的优化方案呢?

答:肯定会影响的的,不然就不会有垂直分表这一说了.实际上垂直分表不仅仅是把字段按数量分开,还要按类型分开。

经常被显示的单独一个表.比如cms新闻系统的标题,摘要,所属分类,缩略图 。这些字段不管是在首页的列表还是分类页的列表。是显示频率很高的。并且这些字段的长度都是有一定的规律的。基本上不会太长,所以单独一个表。

定长和不定长的字段尽可能的分开。比如文章的正文。一般情况下在列表页是不会显示的。所以就没必要查询。可以放到副表中去。

新闻系统的主表中,尽可能的只使用定长字段。比如int 或 char   如果只使用定长字段 速度会有明显的提升。

这是为什么呢?

因为mysql的数据储存在硬盘中,查询的时候如果你告诉他了每个数据的长度,那么系统就会直接按照长度计算出数据的位置。所以快

如果其中有一列的数据长度是未知的。系统只能一点点的去找。所以慢。

当然mysql优化的方式还有很多。

比如:

MySQL 查询速度优化 与性能优化总结[转载]

mysql视图:view(优化查询速度必备)

mysql存储引擎

以上三篇也是跟优化有关的。有兴趣的也可以学习一下。如果要优化到极致,还是需要长期的实践和踩坑的过程中总结经验。