mysql 使用时需要注意的
查询
-
常用的查询字段,记得加索引
加索引能够提高查询速度。 -
join不要超过两张表
join 越多,查询越慢。最好用简单的查询语句。
- 分页查询一定要记得加 order by
MYSQL分页查询时没有用ORDER BY,数据量大的时候,有可能会出现数据重复。
详情见: https://cloud.tencent.com/developer/article/2285766
- 主从延迟
插入之后又立即查询的,一定要小心主从延迟。
比如订单、支付、退款等对延迟敏感的业务。
主从延迟的解决方法: 在sql语句前面加上 FORCE_MASTER .
/*FORCE_MASTER*/ SELECT 字段 FROM 表名
新增/修改
- 新增字段,如果字段是非空( NOT NULL)的,最好加上DEFAULT默认值
如果没有默认值,必须设置一下历史数据,用UPDATE更新历史数据中新增字段的值。
因为历史数据是不存在这个新增字段的,查询做字段映射时会报错。
删除
- 删除字段,最好用逻辑删除,不要物理删除。
直接删除掉数据,在排查问题时,难以回溯,会比较麻烦。
在建表时,可以加一个 deleted 字段,表示是否已经删除。
建表
数据表设计,详情见: https://blog.csdn.net/sinat_32502451/article/details/133068084
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2022-01-04 ElastaticSearch -- es深度分页 searchAfter
2018-01-04 SpringBoot简单理解