mysql内部:连接层(提供与客户的服务)-》服务层(1提供各种接口,2sql优化器)-》引擎层(提供各种存储数据的方式)-》存储层(存储数据)

服务层中有sql优化器可能会影响优化

复合索引

  • 跨列使用
  • 如果有>,则自身和右侧全部失效()

    尽量使用覆盖索引

    like尽量以常量开头,不要意思'%'开头,否则索引失效,如果必须使用,使用索引覆盖优化

    尽量不要使用or

    尽量不要是类型转换