慢SQL优化
1、慢查询统计
show VARIABLES like '%que%'
SET GLOBAL slow_query_log = on; //开启慢sql统计开关
SET GLOBAL long_query_time = 1; //设置超过1秒则 认为是慢sql , 注意此处设置完之后需要重新链接客户端 才可以查看到设置成功
2、优化
索引优化
通过执行计划,查看是否走到索引
(1)索引是否有区分度
(2)是否忽略左匹配原则
(3)采用前缀模糊查询等坏语句
(4)没有做类型转换,导致未走到索引,比如使用$
(5)使用了不等号
(6)大量子查询(多用join,避免临时表)
(7)在where子句中使用表达式操作、函数操作等
SQL语句优化
(1)避免使用select*,不要返回不必要的字段,增加索引覆盖的概率
(2)尽量减少子查询(子查询会创建临时表,查询完毕删除临时表)
(3)调整where子句的连接顺序,将过滤数据多的条件放在前面,最快速度缩小结果集
(4)尽量减少联表查询,联表查询是笛卡尔乘积的形式,检索的数据几何倍上升
(5)一次查询的结果最好不要过大,可以使用分页查询
表设计优化
(1)大数据量分库分表
(2)数据避免倾斜
(3)单表的字段最好不要超过20个。如果是比较大的表,有的字段使用的多,有的字段使用比较少,使用频率比较少的会拖慢查询速度
(4)列类型的选择是否合适(能用int却用了bigint等)
3、索引Type详解
你得不到的念想: 这篇Kafka 博文,很不错的内容,我佬这篇文章结构清晰,具有条理性可以借鉴并学习和落地,内容丰富图文并茂,认真看完收获很大,码文不易且行且珍惜,小明期待我佬下一篇文章的更新,期待为更多的技术人员创造价值。 已关注点赞,求互关点赞
榴莲酱csdn: 这篇Kafka 博文,写的非常详细,内容丰富,具有条理清晰,结构严谨,内容丰富和可借鉴性等特点。 认真看完收获满满,期待下一篇文章的更新。 已关注点赞,求互关点赞
青灯壁冷细雨窗寒: 6的 akc 很秀
向上吧__少年: 应该分析一下时间复杂度
qq_36584996 回复 sheele: 用弱类型语言,注意类型转换,就不会有小数了