检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
慢日志显示SQL语句扫描行数为0 场景描述 查询慢日志中记录SQL执行65秒,但是扫描行数为0。 原因分析 被中断的查询超过慢日志设置阈值也会记录慢日志,但是所记录的扫描行数为0。客户JDBC连接设置了查询超时: 解决方案 优化SQL或者将socketTimeout设置合理值。 父主题:
漏洞修复策略 RDS for MySQL漏洞修复周期 高危漏洞: MySQL社区发现漏洞并发布修复方案后,一般在1个月内,华为云RDS for MySQL会完成漏洞全量分析,涉及且评定为高危的漏洞,进行主动预警升级。 其他漏洞: 其他漏洞请参见内核版本说明,按照版本正常升级流程解决。
SQL诊断结果中记录的行数远小于慢日志中的扫描行数 场景描述 RDS for MySQL实例在DAS界面执行SQL诊断时,SQL语句诊断结果中执行计划记录的行数远小于慢SQL日志中的扫描行数。 原因分析 在查询优化器决定使用全表扫描的方式对某个表执行查询的时候,执行计划的rows
使用最新版本数据库 MySQL社区有新发CVE漏洞时,会及时分析漏洞的影响,依据漏洞实际风险的影响大小决定补丁发布计划。建议及时升级修复,避免漏洞影响数据的安全。 内核小版本功能详情请参见华为云RDS for MySQL内核版本说明。 操作步骤 登录管理控制台。 单击管理控制台左上角的,选择区域。
漏洞公告 漏洞修复策略
如需开通升级内核小版本权限,您可以在管理控制台右上角,选择“工单 > 新建工单”,提交权限申请。 当有对应的小版本更新时(定期同步开源社区问题、漏洞修复),请及时手动立即升级小版本。 升级数据库内核小版本会重启RDS for PostgreSQL实例,服务会出现一定时间的业务中断,中断
分析对应时间段该实例的慢日志,该SQL执行快时其扫描行数为百万级,当SQL执行慢时其扫描行数为千万级,与业务确认该表短期内并无大量数据插入,因此推断执行慢是因为未走索引或选错索引。且通过EXPLAIN查看该SQL的执行计划确实是全表扫描。 图2 慢日志 在实例上对该表执行SHOW INDEX
MySQL支持跨越256字节的扩展,支持对任何长度的varchar类型的字段进行在线扩展操作。 支持的RDS for MySQL版本 建议您使用最新小版本的实例在线扩展varchar类型字段。更多操作,详见升级内核小版本。 表1 在线扩展varchar类型字段支持的版本 varchar类型字段长度 RDS for
InnoDB逻辑读速率 登录实例,查看实话会话,发现大量会话在执行SELECT COUNT(*)。 EXPLAIN确认该SQL的执行计划,发现走全表扫描且单条扫描行数在35万+,其并未走索引。 进一步查看该表的表结构,发现该表仅对字段“is_deleted”添加了一个索引“IDX_XX_USER
长的SQL语句)。本文介绍导致慢SQL的原因和解决方案。 SQL异常 原因及现象 SQL异常的原因很多,例如库表结构设计不合理、索引缺失、扫描行数太多等。 您可以在控制台的慢日志页面,下载并查看执行缓慢的SQL,慢SQL的执行耗时等信息。具体操作,请参见查看或下载慢日志。 解决方案
长的SQL语句)。本文介绍导致慢SQL的原因和解决方案。 SQL异常 原因及现象 SQL异常的原因很多,例如库表结构设计不合理、索引缺失、扫描行数太多等。 您可以在控制台的慢日志页面,下载并查看执行缓慢的SQL,慢SQL的执行耗时等信息。具体操作,请参见查看或下载慢日志。 解决方案
缺点:备库或者主库发生故障(底层或其他原因),在故障恢复前,会阻塞写入操作,可用性较低;同时,同步复制的开销较大,性能较异步模式低。 对数据库在线时间要求较高的业务,建议选择“异步”模式。 对数据一致性要求极高且能容忍写入操作被阻塞的业务,建议选择“同步”模式。 写入操作指非SELECT操作,如DDL和DML等。
Access pattern字段解释 字段 说明 Index scans ratio 索引扫描/序列扫描的比率。 Index scans 每秒索引扫描次数。 Sequential scans 每秒顺序扫描次数。 表4 DML activity字段解释 字段 说明 Tuples inserted
Access pattern字段解释 字段 说明 Index scans ratio 索引扫描/序列扫描的比率。 Index scans 每秒索引扫描次数。 Sequential scans 每秒顺序扫描次数。 表8 DML activity字段解释 字段 说明 Tuples inserted
其他使用问题 慢日志显示SQL语句扫描行数为0 SQL诊断结果中记录的行数远小于慢日志中的扫描行数 RDS for MySQL慢日志里面有毫秒级别的SQL 查看RDS存储空间使用量 错误日志报错The table is full 审计日志上传策略说明 自增字段取值 表的自增AUTO_INCREMENT初值与步长
例的CPU和内存规格。 多表关联查询时,关联字段要加上索引。 可以指定字段或者添加where条件进行查询,避免用select*语句进行全表扫描。 父主题: 性能调优
请参见查看性能指标。 创建只读实例专门负责查询。减轻主实例负载,分担数据库压力。 多表关联查询时,关联字段要加上索引。 尽量避免用select*语句进行全表扫描,可以指定字段或者添加where条件。 父主题: 性能资源类
请参见查看监控指标。 创建只读实例专门负责查询。减轻主实例负载,分担数据库压力。 多表关联查询时,关联字段要加上索引。 尽量避免用select*语句进行全表扫描,可以指定字段或者添加where条件。 父主题: 性能调优
Eye监控。 创建只读实例专门负责查询。减轻主实例负载,分担数据库压力。 多表关联查询时,关联字段要加上索引。 尽量避免用select*语句进行全表扫描,可以指定字段或者添加where条件。 父主题: 性能调优
体请参见管理实时会话。 多表关联查询时,关联字段要加上索引。 可以指定字段或者添加where条件进行查询,避免用select*语句进行全表扫描。 父主题: RDS for MySQL