SQL日常优化技巧
发布日期:2021-06-28 20:34:33 浏览次数:3 分类:技术文章

本文共 608 字,大约阅读时间需要 2 分钟。

  • 往前方,索引字段顺序往前放
  • 40%的界限。 男 女 。 99% + 1% ,的情况。 不能绝对,还是看数据分布,需要加索引~
  • 问题?表情符?

优化方向

  • 硬件 「SASS盘,SSD盘】 -成本高
  • 系统配置 {}
  • 表结构
  • SQL语句和索引

基础规范

  • InnoDB存储引擎 , 对事物,行级锁,并发性更好。
  • UTF8字符集
  • 禁止,存储过程、视图、触发器、Event
  • 禁止存储大文件
  • 表名: t_xxx, idx_xxx, uniq_xxx

表设计规范

  • 表数目小于1000
  • 单表列小于30
  • 表必须有主键 「innodb会保存主键的值, 主键用较短的数据类型做字段】
  • 禁止使用外键 【程序控制】
  • 建议字段定义为NOT NULL 【null列的索引值比较复杂,】
  • text blob禁止大字段 【内存命中率降低】 varchar最大65535,再除以3,两万多。
  • enum用tinyint代替

索引规范

  • 组合索引 【最左原则,左匹配,放左边】
    5.5 升5.6 升5.7     dump数据灌进去做数据,做完数据在5.7【并行复制】 decimal可能精度缺失。      5.7 QPS, 查不多。  5.7 能到毫秒

SQL使用规范

  • 禁止select *。 【对io、网络、系统 都有消耗】
  • 禁止隐士转化
  • 禁止查询条件加函数,函数放后面值上
  • 禁止负向查询,%开头查询
  • 禁止join查询

count(*) 有空值会有影响~~

转载地址:https://blog.csdn.net/yangbinfx/article/details/100735990 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:工作中极端场景
下一篇:app,控制led 代码-42

发表评论

最新留言

网站不错 人气很旺了 加油
[***.192.178.218]2024年04月29日 23时51分27秒