问题描述
- mysql性能问题...............................
-
一个mysql数据表差不多200个字段,这会数据的存储和读取有影响么?如果对性能有比较大的影响,应该怎么改进?
解决方案
虽然不会帮忙顶一下吧
解决方案二:
zh这字段也太多了,浪费和多空间。
请参照第一、二、三范式。这是数据库的基础
解决方案三:
推荐你看一下一个对并发数据库优化很有研究的人写的文章
http://www.360doc.com/content/12/0116/12/8674_179689611.shtml
下面是引用他写的一些内容:
1)把数据把某种逻辑来分类。
比如火车票的订票系统可以按各铁路局来分,可按各种车型分,可以按始发站分,可以按目的地分……,反正就是把一张表拆成多张有一样的字段但是不同种类的表,这样,这些表就可以存在不同的机器上以达到分担负载的目的。
2)把数据按字段分
也就是坚着分表。比如把一些不经常改的数据放在一个表里,经常改的数据放在另一个表里。把一张表变成1对1的关系,这样,你可
以减少表的字段个数,同样可以提升一定的性能。另外,字段多会造成一条记录的存储会被放到不同的页表里,这对于读写性能都有问题。
3)平均分表
因为前两种种方法是并不一定平均分均,可能某个种类的数据还是很多。所以,也有采用平均分配的方式,通过主键ID的范围来分表。
4)同一数据拆开存放
这个在上面数据镜像提过。也就是把同一商品的库存值分到不同的服务器上,比如有10000个库存,可以分到10台服务器上,一台上有1000个库存。然后负载均衡。
解决方案四:
首先需考虑下范式能不能拆分下表,字段太多,当列表查询是有可能数据溢出
解决方案五:
拆分一下表到多个子表,各个表之间用外键等关联起来。
解决方案六:
可以看下mysql的垂直分表
时间: 2024-09-15 10:59:19