- 【建议】减少使用 order by,和业务沟通能不排序就不排序,或将排序放到程序端去做 。order by、group by、distinct 这些语句较为耗费 CPU,数据库的 CPU 资源是极其宝贵的 。
- 【建议】order by、group by、distinct 这些 SQL 尽量利用索引直接检索出排序好的数据 。如 where a = 1 order by 可以利用 key(a, b) 。
- 【建议】包含了 order by、group by、distinct 这些查询的语句,where 条件过滤出来的结果集请保持在 1000 行以内,否则 SQL 会很慢 。
- 【高危】禁用 update|delete t1 … where a = XX limit XX; 这种带 limit 的更新语句 。因为会导致主从不一致,导致数据错乱 。建议加上 order by PK 。
- 【高危】禁止使用关联子查询,如 update t1 set … where name in(select name from user where …);,效率极其低下 。
- 【强制】禁用 procedure、function、trigger、views、event、外键约束 。因为他们消耗数据库资源,降低数据库实例可扩展性 。推荐都在程序端实现 。
- 【强制】禁用 insert into … on duplicate key update … 在高并发环境下,会造成主从不一致 。
- 【强制】禁止联表更新语句,如 update t1, t2 where t1.id = t2.id … 。
推荐阅读
- lnmp一键安装包使用Navicat远程访问mysql8
- 景观设计实训报告总结?风景园林规划设计实训报告
- 苹果|看完苹果WWDC2022大会什么感觉?新MacBook Air真机照来了 刘海屏设计
- 苹果笔记本|9499元 老外上手MacBook Air:乔布斯时代的经典设计没了 非常帅气
- 翡翠|翡翠在我们国家地位很高,能凸显自身特点,设计的款式新颖
- 苹果|2024年iPad屏幕升级为OLED:还有全新外观设计
- 拜年古诗加拼音?拜年古诗的注释
- 幼儿园小班新生家长会活动方案设计?幼儿园园级小班新生家长会方案
- 小米|防夹手设计 小米智能门锁M20明天发:支持指纹、密码解锁
- 一加|最年轻的手机玩家来了 前一加联合创始人打造的新机曝光:四边等宽设计