数据库性能优化实战——从慢查询到索引调优

16 阅读1分钟
  1. 前言

    • 为什么线上服务经常遇到慢 SQL
    • DBA 的经典建议:“先看索引,再看 SQL,再看架构”
  2. 如何定位慢查询

    • MySQL slow_query_log
    • EXPLAIN 分析执行计划
    • 常见导致慢 SQL 的场景(全表扫描、索引失效、join 过多等)
  3. 索引优化实战

    • 单列索引 vs 复合索引

    • 索引最左前缀原则

    • 覆盖索引

    • 案例演示:

      SELECT * FROM user WHERE status = 1 AND age > 18 ORDER BY created_at DESC;
      

      如何通过复合索引 (status, age, created_at) 提升性能

  4. SQL 优化技巧

    • 避免 SELECT *
    • 使用 LIMIT + 合适的索引
    • 分页优化(id > last_id 替代 OFFSET
  5. 架构层面的优化

    • 读写分离
    • 分库分表
    • 缓存(Redis)
  6. 总结

    • 索引不是越多越好
    • 调优要结合业务查询特点
    • 工程化思维:慢 SQL 监控告警 + 自动分析