MySQL技术文章
-
订单创建时先预占库存,用户超时未支付就需要自动释放。本文用 MySQL 8.0 的事件调度器搭一个小型回收任务,围绕 stock_reservations 表说明状态条件、批量边界、索引和锁的关系,并用可重复的 SQL 验收回收结果。492 收藏 -
数据库 · MySQL | 2天前 | MySQL · sql优化 · EXPLAIN ANALYZE · 性能验证 · 数据库排查 · mysql 执行计划 EXPLAIN ANALYZE 实际耗时 慢查询排查
MySQL 的 EXPLAIN 只估算执行计划,EXPLAIN ANALYZE 会真正运行语句并给出实际行数与耗时,因此测试时看起来更慢。本文用订单列表查询拆开两者的差异,说明如何读 actual time、如何避免把诊断开销误当业务耗时,并给出可回滚的线上验证边界。399 收藏 -
复合索引不一定必须从第一列开始过滤。本文用订单明细查询说明 MySQL 8.4 Skip Scan 如何跳过索引前缀、什么条件下能被优化器选中,以及如何用 EXPLAIN、统计信息和会话级开关验收,避免把一次命中误判成长期方案。394 收藏 -
用 MySQL 8.0 的 SKIP LOCKED 做并发任务抢占,关键不在于把锁语句拼出来,而在于限定索引范围、保持短事务、正确处理空队列,并用状态更新和幂等键验收重复消费。228 收藏