开发者社区 > 数据库 > 关系型数据库 > 正文

【RDS】RDS MySQL实例IOPS使用率较高,是什么原因?

已解决

RDS MySQL实例IOPS使用率较高,是什么原因?

展开
收起
云上猫猫 2022-01-13 13:58:34 904 0
1 条回答
写回答
取消 提交回答
  • 采纳回答

    一键诊断

    推荐您使用该方式进行处理。

    注意:您也可以生成实例诊断报告,分析处理问题,详情请参见诊断报告

    1、登录RDS控制台。

    2、单击实例列表,单击目标实例ID。

    3、选择自治服务>一键诊断。

    4、查看当前实例活跃会话,确认SQL语句中执行的时间较长且状态为“sending data”。 image.png

    5、勾选该会话,单击优化,通过优化中的建议,根据您实际情况做出相应优化,例如是否需要创建索引。 image (1).png

    6、若没有直接给出优化建议,单击左侧导航栏的慢SQL,结合会话列表和慢SQL信息进行优化。

    结束问题查询

    您可以通过DMS控制台上的实例会话或命令查询或结束问题查询,建议您结束物理读(Physical_sync_read和Physical_async_read)高的查询。

    说明:RDS实例在连接数满的情况下,无法通过DMS或者MySQL命令行工具连接登录实例,建议您先在RDS控制台的参数设置中将wait_timeout参数(单位秒)设置为比较小的值(比如60),让RDS实例主动关闭空闲时间超过60秒的连接,以便稍后可以通过DMS或者MySQL命令行工具连接访问实例。

    通过实例会话结束问题查询

    注意:需要业务应用先停止提交问题查询的操作,否则会出现不断重连的情况。

    在一键诊断的会话管理页面。选中目标会话,单击结束选中会话即可。 image (3).png

    通过命令行结束问题查询

    1、通过DMS连接实例,详情请参见通过DMS登录RDS MySQL。

    2、执行show processlist;SQL语句查询,查看当前执行的查询语句。 说明:若当前执行会话比较多,您也可以执行show full processlist;语句进行查询。

    3、执行以下SQL语句,结束相关会话。 kill [$ID] 说明:[$ID]为上一步查询结果中ID列的值。

    通过SQL诊断功能优化查询

    1、通过DMS控制台登录实例。

    2、单击页面上方的SQL窗口,选择对应的库。

    3、将查询语句粘贴到SQL窗口,单击SQL诊断,即可得到优化建议。

    4、根据您实际情况,选择优化建议进行处理。例如添加索引,确认执行查询成本会大幅减少。

    2022-01-13 14:03:55
    赞同 展开评论 打赏

相关产品

  • 云数据库 RDS MySQL 版
  • 相关电子书

    更多
    搭建电商项目架构连接MySQL 立即下载
    搭建4层电商项目架构,实战连接MySQL 立即下载
    PolarDB MySQL引擎重磅功能及产品能力盛大发布 立即下载

    相关镜像