zoukankan      html  css  js  c++  java
  • Mysql常用的优化技巧

    1.通过show status 命令了解各种sql的执行效率

    2. 定位执行效率较低的SQL语句

      开启慢查询记录:

      打开Mysql配置文件my.ini ,找到 [mysqld] 在其下面添加

      long_query_time = 2 // 慢查询时间

      log_slow_queries = E:/mysql/logs/log.log #设置把日志写在那里,可以为空,系统会给一个缺省的文件

    3.通过explain分析低效率的SQL语句的执行情况

      使用explain分析该dql语句:

      EXPLAIN SELECT * FROM order_copy WHERE id=12345
      会产生如下信息:
      select_type:表示查询的类型。
      table:输出结果集的表
      type:表示表的连接类型(system和const为佳)
      possible_keys:表示查询时,可能使用的索引
      key:表示实际使用的索引
      key_len:索引字段的长度
      rows:扫描的行数
      Extra:执行情况的描述和说明

      注意:要尽量避免让type的结果为all,extra的结果为:using filesort

    4.适当的位置加上索引【注意以下几种情况】

    • 较频繁的作为查询条件字段应该创建索引

        select * from order_copy where id = $id

    • 唯一性太差的字段不适合单独创建索引,即使频繁作为查询条件

       select * from order_copy where sex=’女’

    • 更新非常频繁的字段不适合创建索引

        select * from order_copy where order_state=’未付款’

    • 不会出现在WHERE子句中字段不该创建索引

    5.如何建索引

    请参考http://www.cnblogs.com/itsharehome/p/4955162.html

  • 相关阅读:
    MySQL-sql语句
    常见IP端口
    Java开发异常
    微信开发-charles抓包
    6、分组查询
    5、关联查询
    4、查询
    3、表的管理
    2、用户管理
    1、oracle基本使用
  • 原文地址:https://www.cnblogs.com/itsharehome/p/4973057.html
Copyright © 2011-2022 走看看