- 主页 > 生活百科 > >
【建议】尽量把一些典型外部调用移出事务,如调用 Web Service,访问文件存储等,从而避免事务过长 。 【建议】对于 MySQL 主从延迟严格敏感的 select 语句,请开启事务强制访问主库 。排序和分组
- 【建议】减少使用 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 会很慢 。
线上禁止使用的 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 … 。
推荐阅读
-
UOS|统信UOS家庭版首次公测开放招募:支持10代CPU、Windows双系统切换
-
-
书法字画|王厚祥:我们有这么好的条件,书法为什么不能超越古人?
-
北京商报|尚纬股份“牵手”罗永浩 炒股价还是做业绩
-
卢卡·东契奇|13+10+10!东契奇伤退+三分6中1,被伦纳德上课,抱头沉默太沮丧!
-
-
加拿大必读@大量短信曝光,哈里曾用心调解,长文:法庭文件披露梅根和父亲关系恶化细节
-
-
「」S20新赛季即将更新,存3000钻石不要乱花,水晶可能新增皮肤
-
-
53岁女星张庭被判无罪!名下所有资产终于解封,时隔2年真相大白
-
身边有人的情况下无法专心做自己的事情?非常渴望做事的时候身边没有人?
-
老丁的汽车观|上市3年都没改款,如今降价都没人要,混得最差的日系车
-
「天天向上」卫视综艺大洗牌!《极限挑战6》收视率2.3%竟是《天天向上》的6倍
-
【旅行】2020年必打卡十大网红旅行地,看看你去过几个?
-
-
小余说美食@雅典娜3分,满分的他有大招就无解!,战士谁的难度最低?曜1分
-
「健身」还在为圆肩驼背而烦恼?每天十分钟,练出一个好体型
-
银子是寅子三代削弱蛇兜加强,给新S让路还是胜率太高?,火影手游
-
「健身房」几个错误的健身行为,若不及时纠正,你就是在浪费时间!