阿里云DMS流程

  1. 协同变更,变更走审批工单。
  2. 性能洞察,自动优化慢查询。
  3. 遇到 CPU 高的情况,查看慢查询并进行限流,以保证业务正常使用。
  4. 改造业务或者临时提供有损服务。
  5. 通过无锁变更增加索引。

引言

我们的经典问题又来了,关于这个问题大家的想法不尽相同。但有一点是我们的共识,那就是都无法完全清晰地阐述整个流程。那么今天,我们就来着力解决这个问题。

开始

一、问题定位:从告警到根因的精准狙击

1. 快速止血:建立应急响应机制

触发告警

通过监控平台(如Prometheus + Grafana)捕获数据库相关异常指标,如:数据库QPS突增、CPU使用率超阈值(>80%)、慢查询数量激增(如MySQL Slow_queries每分钟超过100次)。

-- 实时监控慢查询数量
SHOW GLOBAL STATUS LIKE 'Slow_queries';

紧急限流

立即限制高危操作的并发量,防止雪崩效应:

-- 动态限制最大连接数(临时降低至200)
SET GLOBAL max_connections = 200;

-- 使用pt-kill终止耗时超过10秒的查询
pt-kill --busy-time 10 --kill --victims all --print h=127.0.0.1

2. 根因分析:工具链组合拳

慢日志分析