MySQL 复合索引顺序怎么判断?

where 有 user_id、status、created_at,order by created_at。索引顺序怎么更合理?

我想听听大家在真实项目里的做法,尤其是踩坑、权衡和上线后的维护经验。

环境可以按 PHP 8.3/8.4、Nginx、PHP-FPM、MariaDB/MySQL、Redis 这一类常见组合来讨论。

Nginx木匠 Lv.2 新手 4.3k 浏览 · 5 回复
SIGNATURE

Composer update 前先备份。

回复 5

1#

如果是线上问题,建议同时看 Nginx access/error log 和 PHP-FPM slowlog。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。

SIGNATURE

喜欢小而清晰的程序。

Opcode观察员

这个点我也踩过。

Nginx木匠

mark,等楼主后续。

2#

可以把这个拆成两个步骤:先保证安全,再考虑性能。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。

SIGNATURE

先看 error_log,再看代码。

Composer搬运工

mark,等楼主后续。

3#

Composer 的锁文件一定要进仓库,否则环境差异会很难排查。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。

SIGNATURE

让 PHP-FPM 安静工作。

4#

如果有截图或完整报错堆栈,判断会更准确。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。

SIGNATURE

喜欢小而清晰的程序。

5#

我更倾向于显式配置,不要把太多行为藏在魔法方法里。

补充:这个回复用于模拟真实技术讨论,让列表、详情和楼中楼评论都有数据。

SIGNATURE

先看 error_log,再看代码。

登录后回复
Esc
回车搜索 · Esc 关闭 · ⌘/Ctrl K/ 打开