跳到主要内容

MySQL 高并发基础

高并发场景下,数据库瓶颈通常来自连接、锁、慢查询和磁盘 I/O。优化不能只靠增加机器,应先定位瓶颈。

一、QPS

QPS 表示每秒处理的请求或 SQL 数量。它可以衡量数据库承受的访问压力。

二、连接池

连接池可以复用数据库连接,避免频繁创建连接。

关注参数:

  • 最大连接数;
  • 空闲连接数;
  • 连接超时;
  • 查询超时;
  • 连接泄漏检测。

三、索引

高并发查询必须依赖有效索引。

常见索引失效原因:

  • 对索引列使用函数;
  • 隐式类型转换;
  • 前置模糊查询;
  • 联合索引不满足最左前缀;
  • 选择性太差。

四、锁冲突

热点更新容易造成锁等待。

优化方法:

  • 减少事务时间;
  • 拆分热点行;
  • 使用乐观锁;
  • 异步削峰;
  • 避免大范围更新。

五、排查顺序