根因分析 - TiDB数据库性能异常

性能异常 - 15分钟前检测到

智能监测系统已检测到查询性能下降70%

影响范围: 订单处理系统、用户查询接口

查询响应时间

同比增长240%

数据库负载

接近瓶颈

系统资源

正常
CPU 62%
内存 85%
磁盘I/O 43%
网络 29%

根因分析结果

已确认

索引失效

主要查询表 order_items 的索引 idx_product_id 未被使用,导致全表扫描

连接查询效率低

products 表的连接查询使用了嵌套循环,而非哈希连接

统计信息过期

order_items 的统计信息已超过7天未更新,影响优化器决策

问题SQL查询

SELECT o.order_id, o.customer_id, p.product_name, oi.quantity, oi.price
FROM orders o
JOIN order_items oi ON o.order_id = oi.order_id
JOIN products p ON oi.product_id = p.product_id
WHERE o.order_date > '2023-01-01'
AND oi.status = 'COMPLETED'

Ti-DB数据库运维助手

基于deepseek大模型

您好,我检测到数据库查询性能出现了异常下降。根据分析,主要是由于索引失效导致的全表扫描问题。我可以帮您解决这个问题。

能详细说明一下问题原因吗?

经过分析,我发现有三个主要问题:

  1. 索引失效order_items 表的 idx_product_id 索引未被使用。这是因为查询条件中的 status = 'COMPLETED' 导致优化器放弃了索引,选择了全表扫描。
  2. 连接算法不优:系统使用了嵌套循环连接而非哈希连接,这在大表连接时效率较低。
  3. 统计信息过期order_items 表的统计信息已超过7天未更新,导致优化器做出了错误的执行计划决策。

您需要我为这些问题提供具体的解决方案吗?

推荐操作

版权所有 © 2025 灵诺智能(北京)科技有限公司