Mysql优化是什么,如何优化(一)

分享经验

以前的技术活都是有个师傅一把手教导,现在技术活只能靠自己去学习。我作为程序员,要把握两点,一是市场,二是实战技术。市场作为导向,而实战技术才是技术人员最大的财富。我经常会去看行业的招聘信息。因为那里可以看到市场需要技术人员的技术要达到什么程度,懂得什么技术。如果你懂了完全可以胜任,如果招聘信息上,你看不懂的技术,正是你要需要弥补的知识。

MySQL优化要从数据库设计、查询、索引、存储、搜索等方面优化考虑。

优化的思路:不查->少查->内存查->磁盘查->用索引->少排序

从设计上优化
1、遵从三范式建立数据表,分清楚实体,实体之间的关系,什么时候用外键,分表。
2、表优化,遵循以下原则

  • 定长变长分离
    定长指字段的字节不会变的字段一张表,变长指字段的字节会变多变少的一张表。例如,uid ,name,email 一张表,description 一张表,通过uid链表查询。
  • 常用字段和不常用的字段要分离(有点难度)
    需要结合网站具体业务来分析,分析字段的查询场景,查询频率低的字段,单拆出来。例如:列表页上是页面常用信息一个表,点击进去详细页的一个表。
  • 在1对多,需要关联统计的字段上,添加冗余字段
    例如:每个文章类发布多了多少篇。这个时候直接在文章类后面加上统计字段,每次增加一篇文章或者减少一篇文章直接操作字段,而不是文章的数据表中查询统计多少篇。
    3、字段优化
  • 字段类型优先级:整型>data,time>enum,char>varchar>blob,text 。
  • 字段的字节够用就行。
  • 尽量避免用null()。

从索引上优化

  1. 表中有两个索引

猜你喜欢

转载自blog.csdn.net/weixin_47166838/article/details/105701285
今日推荐