• MySQL数据库优化


    不同版本mysql的优化器有一定的差别
    + 查看数据库版本
    select @@version;

    + 查看正在使用的database
    select database();

    + 查看mysql是否开启慢查询日志
    show variables like 'slow_query_log';

    + 开启mysql慢查询日志
    set global slow_query_log=on;

    + 设置存储Mysql慢查询日志所在的文件位置
    set global slow_query_log_file='/home/mysql/sql_log/mysql-slow.log';

    + 设置没有索引的记录到慢查询日志
    set global log_queries_not_using_indexes = on;

    + 设置SQL查询记录到慢查询日志文件的限定时间,单位秒,通常是0.01s
    set long_query_time=1

    + 慢查询日志分析工具
    pt-query-digest

    pt-query-digest /var/lib/mysql/bogon-slow.log | more

    + 查看sql执行计划
    explain select * from store;
    Using filesort:需要优化。MYSQL需要进行额外的步骤来发现如何对返回的行排序。它根据连接类型以及存储排序键值和匹配条件的全部行的行指针来排序全部行。
    Using temporary:需要优化。MYSQL需要创建一个临时表来存储结果,这通常发生在对不同的列集进行ORDER BY而不是GROUP BY的情况。

    + 合理创建索引

    + 用join代替子查询

    + group by语句优化
    查询每一个演员参演影片的数量
    select actor.first_name,actor.last_name,count(*)
    from film_actor left join actor on film_actor.actor_id = actor.actor_id
    group by film_actor.actor_id;


    有问题欢迎留言交流。

    技术交流群:282575808

    --------------------------------------

    声明: 原创文章,未经允许,禁止转载!

    --------------------------------------

  • 相关阅读:
    数据库中分组函数rank() ntile() dense_rank() row_number
    seo关键指令
    asp.net中的几个路径问题!
    Jquery 1.6+新属性prop()使用
    SEO
    电脑屏幕显示米黄色!
    C#中对类的扩展
    使用bat文件发布asp.net程序
    SEO优化
    当打开一个网页,浏览器host服务器做了啥?
  • 原文地址:https://www.cnblogs.com/xxoome/p/8342676.html
Copyright © 2020-2023  润新知