检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
联合索引设置不当导致慢SQL的解决办法 场景描述 业务侧云数据库GaussDB(for MySQL)实例上以往执行耗时8秒的查询,在11:00后耗时超过30秒。 原因分析 查看查询变慢对应的时间段中,实例CPU监控指标并无飙升情况且使用率一直都较低,因此排除了CPU冲高导致查询变慢的可能。
长事务产生大量临时表导致内存超限的解决办法 场景描述 云数据库GaussDB(for MySQL)实例在11:30到12:27分内存使用率持续上升,最终触发内存超限。 图1 内存使用率 原因分析 查看processlist.log日志,查询到有两个慢SQL与图1中内存增长的时间比较匹配。
持锁长事务导致后续业务报等锁超时的解决办法 场景描述 业务侧实例上报错误码1205,等锁超时提示。 MySQL error code MY-001205 (ER_LOCK_WAIT_TIMEOUT): Lock wait timeout exceeded; try restarting
possible_keys:指出MySQL能使用哪个索引在表中找到记录,查询涉及到的字段上若存在索引,则该索引将被列出,但不一定被查询使用。 key:表示MySQL实际决定使用的键(索引),如果没有选择索引,键是NULL。要想强制MySQL使用或忽视possible_keys列中的索引,在查询中使用FORCE INDEX、USE
基本使用类 查看GaussDB(for MySQL)的存储容量 修改库名和修改表名 字符集和字符序的默认选择方式 自增字段值跳变的原因 表的自增AUTO_INCREMENT初值与步长 修改表的自增AUTO_INCREMENT值 自增主键达到上限,无法插入数据 自增字段取值 自增属
使用规范 GaussDB(for MySQL)数据库权限规范 GaussDB(for MySQL)库表设计规范 GaussDB(for MySQL)索引设计规范 GaussDB(for MySQL)SQL使用规范 父主题: 使用数据库
使用示例 设置参数:idle_transaction_timeout=10,idle_readonly_transaction_timeout=0,idle_write_transaction_timeout=0 只读事务 mysql> begin; Query OK, 0 rows
L(如需关闭可参考:设置SSL数据加密),客户业务使用时可以在客户端自行选择是否使用SSL。 使用mysql client连接时使用SSL的方式可参考:通过客户端连接GaussDB(for MySQL)。 使用JDBC连接时使用SSL的方式可参考:通过JDBC连接MySQL数据库。
GaussDB(for MySQL) CPU使用率高的解决方法 使用云数据库GaussDB(for MySQL)时,如果您的CPU使用率很高或接近100%,会导致数据读写处理缓慢、无法获取连接、出现报错等,从而影响业务正常运行。 解决方案 通过查看慢SQL日志来确定是否存在运行缓慢
OFFSET下推优化开关。 OFF:关闭LIMIT OFFSET下推优化开关。 除了使用上述特性开关来控制OFFSET下推功能生效或者不生效,还可以使用HINT来实现。 OFFSET_PUSHDOWN(table_name):生效OFFSET下推优化。 NO_OFFSET_PUS
使用前必读 概述 调用说明 终端节点 约束与限制 基本概念
使用方法 您可以通过“rds_in_predicate_conversion_threshold”参数设置IN谓词转子查询功能。 该参数值默认为0, 表示关闭该功能。如果您需要使用,则需要联系客服人员开启。 表1 参数说明 参数名称 级别 描述 rds_in_predicate_
c=4,那么可以用到完整的索引。这种情况可能会在字段冗余设计(反范式)时出现。 推荐使用UNION ALL,减少使用UNION,需要考虑是否需要对数据进行去重。 使用UNION ALL不对数据去重,由于少了排序操作,速度快于使用UNION,如果业务没有去重的需求,优先使用UNION ALL。 在代码中实现分页查询逻辑
Memory)。 场景描述 GaussDB(for MySQL)实例在16:30分内存使用率突增,触发OOM后实例重启。 原因分析 查看内存利用率监控指标,实例的内存使用率在16:30左右率突增,触发OOM后实例重启,内存使用率骤降。 图1 内存利用率 查看该时间段慢SQL数监控指标,确认该时间段慢SQL数量突增。
使用数据库 使用规范 数据库管理 数据库账号管理(非管理员权限)
GaussDB(for MySQL) CPU使用率高的解决方法 联合索引设置不当导致慢SQL的解决办法 长事务产生大量临时表导致内存超限的解决办法 持锁长事务导致后续业务报等锁超时的解决办法 GaussDB(for MySQL)的临时盘使用说明 GaussDB(for MySQL)实例在空负载下CPU占用说明
使用GaussDB(for MySQL)的SQL限流 操作场景 SQL限流功能主要解决用户某类突发的并发过高的SQL导致GaussDB(for MySQL)实例不稳定的问题。 约束限制 满足如下版本要求的GaussDB(for MySQL)可以使用SQL限流功能。 内核版本大于等于2
使用root账号连接数据库失败 场景描述 使用root账号连接数据库失败。 原因分析 查看内核日志error.log,确认是否有拒绝连接的日志。 查看root权限,发现有两个root账号,其中一个root限制host必须是IP必须是192开头。 解决方案 联系华为云客服协助删除多余的root账号。
只读节点会将参数sql_replica_on参数设置为on以禁止增删改请求。 解决方案 请检查写业务的客户端连接IP是否正确,建议连接实例的浮动IP或Proxy的读写IP。 父主题: 基本使用类
数据库基本使用 主备机分别执行MATCH AGAINST语句后结果不一致的原因 使用INSTANT方式快速添加列 使用LOAD DATA导入本地数据 对于千万或亿级的超大表如何高效写入数据或创建索引 GaussDB(for MySQL)超大表删除索引有哪些风险