
# 诊断RDS实例故障
RDS诊断通过内存使用情况、磁盘性能指标、慢SQL数据等维度分析，帮您快速了解云数据库整体运行状况并提供异常问题的处理建议。
#### 注意事项
RDS诊断仅支持资源类型为实例的诊断。
#### RDS诊断
1. 登录[云运维中心](https://console.huaweicloud.com/coc/?#/console/home)。
2. 在左侧导航栏选择"故障管理 \> 故障诊断"。
3. 单击RDS诊断卡片的"立即诊断"，进入创建RDS诊断页面。
4. 单击"添加实例"，根据您的需求选择实例。 
   表1选择实例参数说明 
   | **参数** | **说明**                                                                                                                                                                                                                                                                                             | **示例**   |
   |:---|:---|:---|
   | 选择方式   | 请选择实例选择方式。 - 手动选择：根据"企业项目"、"视图类型"、"资源类型"、"区域"和"目标实例"确认筛选条件，手动选择实例。  - 自动全选：暂不支持。   | 手动选择     |
   | 企业项目   | 在下拉列表中选择企业项目，支持选择"全部"。                                                                                                                                                                                                                                                                             | 全部       |
   | 视图类型   | 请选择视图类型。 - CMDB资源视角：以资源视角选择实例列表。  - CMDB应用视角：以应用视角选择实例列表。                   | CMDB资源视角 |
   | 资源类型   | 默认参数，不支持修改。                                                                                                                                                                                                                                                                                        | RDS      |
   | 区域     | 在下拉列表中选择区域。                                                                                                                                                                                                                                                                                        | 华北-北京一   |
   | 目标实例   | 在筛选框设置条件，选择筛选出的实例。                                                                                                                                                                                                                                                                                 | **-**    |
      
   
   
5. 单击"确定"，等待诊断完成。 
   如果执行过程产生异常，请参考[故障诊断异常如何处理？](https://support.huaweicloud.com/coc_faq/coc_faq_05_004.html)
   
   
6. 在诊断结果的"诊断报告"页签查看诊断详情。 
   支持勾选"仅查看异常项"，对诊断结果进行过滤。
   
   
7. 查看异常详情，并根据"建议"进行处理。
 
 #### 诊断结果说明
支持的诊断项以及诊断异常的处理建议，请参见[表2]。
 表2诊断说明 
| 诊断项       | 监控指标             | 指标说明                                                                                   | 处理建议                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|:---|
| 系统运行处于高水位 | CPU使用率 (%)       | 该指标用于统计测量对象的CPU使用率。                                                                    | - 评估业务SQL的执行计划，添加索引避免全表扫描。  - 扩容CPU规格，满足计算型业务需求。                                                                                                              |
| 系统运行处于高水位 | TPS (次/秒)        | 该指标用于统计事务执行次数，含提交的和回退。                                                                 | - 评估业务SQL的执行计划，添加索引避免全表扫描。  - 扩容CPU规格，满足计算型业务需求。                                                                                                              |
| 系统运行处于高水位 | QPS (次/秒)        | 该指标用于统计SQL语句查询次数，含存储过程。                                                                | - 评估业务SQL的执行计划，添加索引避免全表扫描。  - 扩容CPU规格，满足计算型业务需求。                                                                                                              |
| 系统运行处于高水位 | CPU使用率 (趋势)      | 该指标用于统计测量对象的CPU使用率。                                                                    | - 评估业务SQL的执行计划，添加索引避免全表扫描。  - 扩容CPU规格，满足计算型业务需求。                                                                                                              |
| 系统运行处于高水位 | 长事务指标 (趋势)       | 该指标统计长事务耗时数据。 相关操作命令前后分别有BEGIN以及COMMIT命令才算作一个完整的长事务。  | - 评估业务SQL的执行计划，添加索引避免全表扫描。  - 扩容CPU规格，满足计算型业务需求。                                                                                                              |
| 锁等待异常     | 等待行锁事务数 (个数)     | 该指标用于统计Innodb行锁等待个数。 表示历史累积等待行锁的事务个数。重启会清空锁等待。         | - 元数据锁：终止持有MDL锁的会话，恢复被阻塞的操作。  - Innodb锁等待：查看是否存在锁等待；终止持有锁的源头会话，恢复被阻塞的操作。                                                                                      |
| 锁等待异常     | 行锁平均等待时间 (ms)    | 该指标用于统计innodb历史行锁平均等待时间。                                                               | - 元数据锁：终止持有MDL锁的会话，恢复被阻塞的操作。  - Innodb锁等待：查看是否存在锁等待；终止持有锁的源头会话，恢复被阻塞的操作。                                                                                      |
| 锁等待异常     | 当前行锁等待数 (个数)     | 该指标用于统计innodb当前行锁等待数。 表示当前正在等待行锁的事务个数。                 | - 元数据锁：终止持有MDL锁的会话，恢复被阻塞的操作。  - Innodb锁等待：查看是否存在锁等待；终止持有锁的源头会话，恢复被阻塞的操作。                                                                                      |
| 锁等待异常     | MDL锁数量 (Count)   | 该指标用于统计MDL锁数量。                                                                         | - 元数据锁：终止持有MDL锁的会话，恢复被阻塞的操作。  - Innodb锁等待：查看是否存在锁等待；终止持有锁的源头会话，恢复被阻塞的操作。                                                                                      |
| 锁等待异常     | 长事务指标 (趋势)       | 该指标统计长事务耗时数据。 相关操作命令前后分别有BEGIN以及COMMIT命令才算作一个完整的长事务。 | - 元数据锁：终止持有MDL锁的会话，恢复被阻塞的操作。  - Innodb锁等待：查看是否存在锁等待；终止持有锁的源头会话，恢复被阻塞的操作。                                                                                      |
| 容量不足      | 磁盘利用率 (%)        | 该指标用于统计测量对象的磁盘利用率。                                                                     | - 磁盘扩容：您可以设置存储空间自动扩容，在实例存储空间达到阈值时，会触发自动扩容。  - 减少磁盘数据：删除无用的历史表数据。  - 对于大量排序查询导致的临时文件过大，建议优化SQL查询。   |
| 容量不足      | 磁盘使用量 (GB)       | 该指标用于统计测量对象的磁盘使用大小。                                                                    | - 磁盘扩容：您可以设置存储空间自动扩容，在实例存储空间达到阈值时，会触发自动扩容。  - 减少磁盘数据：删除无用的历史表数据。  - 对于大量排序查询导致的临时文件过大，建议优化SQL查询。   |
| 容量不足      | 磁盘总大小 (GB)       | 该指标用于统计测量对象的磁盘总大小。                                                                     | - 磁盘扩容：您可以设置存储空间自动扩容，在实例存储空间达到阈值时，会触发自动扩容。  - 减少磁盘数据：删除无用的历史表数据。  - 对于大量排序查询导致的临时文件过大，建议优化SQL查询。   |
| 容量不足      | 磁盘利用率 (趋势)       | 该指标用于统计测量对象的磁盘利用率。                                                                     | - 磁盘扩容：您可以设置存储空间自动扩容，在实例存储空间达到阈值时，会触发自动扩容。  - 减少磁盘数据：删除无用的历史表数据。  - 对于大量排序查询导致的临时文件过大，建议优化SQL查询。   |
| 慢sql频率过高  | 慢日志个数统计 (个/分钟)   | 该指标用于展示每分钟MySQL产生慢日志的数量。                                                               | - 根据慢SQL的执行计划进行优化。  - 扩容CPU规格，满足计算型业务需求。                                                                                                                                |
| 慢sql频率过高  | 慢日志个数统计 (趋势)     | 该指标用于展示每分钟MySQL产生慢日志的数量。                                                               | - 根据慢SQL的执行计划进行优化。  - 扩容CPU规格，满足计算型业务需求。                                                                                                                                |
| 内存使用率过高   | 内存使用率 (%)        | 该指标用于统计测量对象的内存使用率。                                                                     | 扩容实例规格，满足业务需求。                                                                                                                                                                                                                                                                                                                                    |
| 磁盘性能异常    | OPS (次/秒)        | 该指标用于统计当前实例，单位时间内系统处理的I/O请求数量（平均值）。                                                    | - 扩容实例规格，满足业务需求。  - 优化业务充分利用Buffer等，减少从磁盘读取。                                                                                                                     |
| 磁盘性能异常    | 磁盘I/O非空闲时间占比 (%) | 该参数表示磁盘设备的繁忙程度，表示有I/O（非空闲）的时间百分比。因现代磁盘设备都有并行处理多个I/O请求的能力，即使该指标达到100%也不意味着设备饱和。         | - 扩容实例规格，满足业务需求。  - 优化业务充分利用Buffer等，减少从磁盘读取。                                                                                                                     |
| 磁盘性能异常    | 硬盘读吞吐量 (字节/秒)    | 该指标用于统计每秒从硬盘读取的字节数。                                                                    | - 扩容实例规格，满足业务需求。  - 优化业务充分利用Buffer等，减少从磁盘读取。                                                                                                                     |
| 磁盘性能异常    | 硬盘写吞吐量 (字节/秒)    | 该指标用于统计每秒写入硬盘的字节数。                                                                     | - 扩容实例规格，满足业务需求。  - 优化业务充分利用Buffer等，减少从磁盘读取。                                                                                                                     |
| 链接数过多     | 数据库总连接数 (个)      | 该指标用于统计尝试连接到MySQL服务器的总连接数。                                                             | - 优化SQL，减少临时表等的使用。  - 会话定期重连，及时释放session级别内存。                                                                                                                |
| 链接数过多     | 当前活跃连接数 (个)      | 该指标用于统计非sleep状态的连接。                                                                    | - 优化SQL，减少临时表等的使用。  - 会话定期重连，及时释放session级别内存。                                                                                                                |
| 链接数过多     | 内存使用率 (趋势)       | 该指标用于统计测量对象的内存使用率。                                                                     | - 优化SQL，减少临时表等的使用。  - 会话定期重连，及时释放session级别内存。                                                                                                                |
   
#### 相关文档
COC支持通过调用API接口实现提交、重试、取消、查询诊断任务，详细请参考[故障诊断](https://support.huaweicloud.com/api-coc/coc_api_04_03_005.html)。
