阿里云RDS MySQL实例在日常使用中出现实例IOPS使用率较高的情况,本文将介绍造成该问题的常见原因及其解决方法。
常见的问题原因如下所示:
阿里云提醒您:
- 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
- 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
- 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。
您可以通过以下方法来解决IOPS使用率高的问题:
推荐您使用该方式进行处理。
注意:您也可以生成实例诊断报告,分析处理问题,详情请参见诊断报告。
选择自治服务>一键诊断。
查看当前实例活跃会话,确认SQL语句中执行的时间较长且状态为“sending data”。
勾选该会话,单击优化,通过优化中的建议,根据您实际情况做出相应优化,例如是否需要创建索引。
若没有直接给出优化建议,单击左侧导航栏的慢SQL,结合会话列表和慢SQL信息进行优化。
您可以通过DMS控制台上的实例会话或命令查询或结束问题查询,建议您结束物理读(Physical_sync_read和Physical_async_read)高的查询。
说明:RDS实例在连接数满的情况下,无法通过DMS或者MySQL命令行工具连接登录实例,建议您先在RDS控制台的参数设置中将wait_timeout参数(单位秒)设置为比较小的值(比如60),让RDS实例主动关闭空闲时间超过60秒的连接,以便稍后可以通过DMS或者MySQL命令行工具连接访问实例。
注意:需要业务应用先停止提交问题查询的操作,否则会出现不断重连的情况。
在一键诊断的会话管理页面。选中目标会话,单击结束选中会话即可。
show processlist;
SQL语句查询,查看当前执行的查询语句。
说明:若当前执行会话比较多,您也可以执行
show full processlist;
语句进行查询。
kill [$ID]
说明:[$ID]为上一步查询结果中ID列的值。
如果您的问题仍未解决,您可以在阿里云社区提交工单联系阿里云技术支持。