- 主页 > 生活百科 > >
【建议】尽量把一些典型外部调用移出事务,如调用 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 … 。
推荐阅读
-
-
智通财经|净亏损148.4万美元,龙运国际(LYL.US)2020财年年报:营收同比下滑99.6%
-
-
-
|军中女贪高小燕:靠“独门秘诀”征服领导,花大价钱升少将军衔
-
寿乡散人|当年多大岁数,有人说只有15岁,给八百壮士送国旗的杨惠敏
-
-
小米|小米第一台5G手机被弃:小米MIX3 5G无缘升级MIUI 12
-
新药创制专项最后一款药上市 诺诚健华商业化阶段开始
-
雷达通信电子战:雷达回波模拟器在汽车雷达测试中的应用
-
-
#唐小姐美食记#没花多少钱,朋友圈纷纷评论:小日子让人羡慕,我家早餐这样煮
-
G时尚|一身银黑拼接抹胸长裙,呈现曼妙身材,白鹿活动造型
-
-
惊慌薄情|全锦赛前瞻:两大主力或缺席,陈梦需证明自己,孙颖莎志在卫冕
-
阿森纳▲后腰对一支球队有多重要?从阿森纳的坠落说起
-
-
-
辣椒酱|7月底,正当吃的菜,润肠还通便,腌着吃特香,错过要再等一年
-
游戏测评路人君|这类游戏究竟哪里值得玩?,沈腾代言奇迹游戏广告刷屏