码迷,mamicode.com
首页 > 数据库 > 详细

MySQL2索引优化

时间:2018-12-30 02:56:57      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:衡量   读写   创建   str   分离   请求   大量   垂直   查询   

索引

无论在工作中,还是在面试当中,数据库优化是一个避不开的技术点,关于数据库的优化,有如下几点:

  (1)优化表结构,对常用的字段和非常用的字段分开存储;

  (2)优化SQL,合理使用索引;

  (3)做数据库读写分离,减少IO压力,由于数据库对记录做了持久化至磁盘,对磁盘的IO是非常消耗性能的;

  (4)使用缓存技术,不让所有的数据请求都打到数据库上;

  (5)对业务做垂直拆分,减少耦合度;

  (6)对标做水平拆分,这一步是比较复杂,要注意主键生成原则和请求路由规则。

索引使用优点和注意点

  一般可以通过Explain查询检索的Rows的记录量来衡量查询速度;

  但是把索引建立在有大量重复数据的字段上,并不能有效地提升SQL效率;

       发现没有用到索引,这是对索引列使用like的限制,要对索引列使用like,通配符只能在结尾,开头不可以有任何的通配符;

  在索引列上使用MySQL函数也会导致索引失效

  (1)使用LIKE关键字的查询语句

       在使用LIKE关键字进行查询的查询语句中,如果匹配字符串的第一个字符为"%",索引不会起作用,只有"%"不在第一个位置,索引才会起作用

  (2)使用多列索引的查询语句

       MySQL可以为多个字段创建索引,一个索引可以包含16个字段,对于多列索引,只有查询条件中使用了这些字段中第一个字段时,索引才会被使用

  (3)使用OR关键字的查询语句

      查询语句的查询条件中只有OR关键字,且OR前后两个条件都是索引时,查询才会使用索引,否则,查询将不使用索引

 

MySQL2索引优化

标签:衡量   读写   创建   str   分离   请求   大量   垂直   查询   

原文地址:https://www.cnblogs.com/Chi-Sophia/p/10198207.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!