检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
比较、数学运算等场景很容易出现预期外的情况。 MySQL中涉及浮点数的类型有float和double。如下示例中遇到的问题: 解决方案 使用精度的方法处理,使用字段与数值的差值的绝对值小于可接受的精度的方法。示例: 使用定点数类型(DECIMAL)取代浮点数类型,示例: 父主题:
持锁长事务导致后续业务报等锁超时的解决办法 场景描述 业务侧实例上报错误码1205,等锁超时提示。 MySQL error code MY-001205 (ER_LOCK_WAIT_TIMEOUT): Lock wait timeout exceeded; try restarting
持锁长事务导致后续业务报等锁超时的解决办法 场景描述 业务侧实例上报错误码1205,等锁超时提示。 MySQL error code MY-001205 (ER_LOCK_WAIT_TIMEOUT): Lock wait timeout exceeded; try restarting
ut等,会影响客户端连接的超时时间。如果超过这个时间,一直没使用的连接就会断开。 解决方案 将socketTimeout、connectTimeout等参数的默认值调整为合适的值。 在程序中注意处理断线重连的功能。 推荐直接使用连接池。 父主题: 参数类
ut等,会影响客户端连接的超时时间。如果超过这个时间,一直没使用的连接就会断开。 解决方案 将socketTimeout、connectTimeout等参数的默认值调整为合适的值。 在程序中注意处理断线重连的功能。 推荐直接使用连接池。 父主题: 参数类
取值范围: 0:表示权重负载模式。 1:表示负载均衡模式(数据库主节点不接受读请求)。 2:表示负载均衡模式(数据库主节点接受读请求)。 balance_route_mode_enabled Boolean 参数解释: 数据库代理版本是否支持负载均衡模式。 取值范围: true 支持。 false
取值范围: 0:表示权重负载模式。 1:表示负载均衡模式(数据库主节点不接受读请求)。 2:表示负载均衡模式(数据库主节点接受读请求)。 balance_route_mode_enabled Boolean 参数解释: 数据库代理版本是否支持负载均衡模式。 取值范围: true 支持。 false
联合索引设置不当导致慢SQL的解决办法 场景描述 业务侧云数据库GaussDB(for MySQL)实例上以往执行耗时8秒的查询,在11:00后耗时超过30秒。 原因分析 查看查询变慢对应的时间段中,实例CPU监控指标并无飙升情况且使用率一直都较低,因此排除了CPU冲高导致查询变慢的可能。
联合索引设置不当导致慢SQL的解决办法 场景描述 业务侧云数据库TaurusDB实例上以往执行耗时8秒的查询,在11:00后耗时超过30秒。 原因分析 查看查询变慢对应的时间段中,实例CPU监控指标并无飙升情况且使用率一直都较低,因此排除了CPU冲高导致查询变慢的可能。 图1 CPU使用率
xxx discard/import tablespace报错 数据库报错Native error 1461的解决方案 创建表失败报错Row size too large的解决方案 Order by limit分页出现数据重复问题 执行select * from sys.innodb_lock_waits报错
xxx discard/import tablespace报错 数据库报错Native error 1461的解决方案 创建表失败报错Row size too large的解决方案 Order by limit分页出现数据重复问题 执行select * from sys.innodb_lock_waits报错
存储过程和相关表字符集不一致导致执行缓慢 场景描述 TaurusDB存储过程执行很慢,处理少量数据耗时1min以上,而单独执行存储过程中的SQL语句却很快。 原因分析 存储过程和相关表、库的字符集不一致,导致查询结果存在大量字符转换,从而执行缓慢。 排查过程: 使用如下命令查看存
存储过程和相关表字符集不一致导致执行缓慢 场景描述 TaurusDB存储过程执行很慢,处理少量数据耗时1min以上,而单独执行存储过程中的SQL语句却很快。 原因分析 存储过程和相关表、库的字符集不一致,导致查询结果存在大量字符转换,从而执行缓慢。 排查过程: 使用如下命令查看存
allowed”。详见官方文档。 解决方案 MySQL机制导致,建议优化业务,避免单表创建过多索引。 InnoDB表的其他限制: 一个表最多可以包含1017列(包含虚拟生成列)。 InnoDB对于使用DYNAMIC或COMPRESSED行格式的表,索引键前缀长度限制为3072字节。 多列索引最多允许16列,超过限制会报错。
allowed”。详见官方文档。 解决方案 MySQL机制导致,建议优化业务,避免单表创建过多索引。 InnoDB表的其他限制: 一个表最多可以包含1017列(包含虚拟生成列)。 InnoDB对于使用DYNAMIC或COMPRESSED行格式的表,索引键前缀长度限制为3072字节。 多列索引最多允许16列,超过限制会报错。
失效,请谨慎配置。为了避免您的业务受影响,建议在使用增删只读节点功能时,在“数据库代理”中将Serverless节点设置为相同权重或使用负载均衡模式。 一个实例支持的最大只读节点的个数为15。因此,增删只读节点策略的只读节点上限与实例中原有的非Serverless节点个数总和不能
该场景下,SQL语句一般比较简单,执行效率也高,数据库侧优化余地小,需要从业务源头优化。 解决方案: 单纯的QPS高导致CPU使用率过高,往往出现在实例规格较小的情况下,建议升级实例CPU规格。 优化慢查询,优化方法参照场景1 慢查询导致CPU升高的解决方案。若优化慢查询后效果不明显,建议升级实例CPU规格。 对
失效,请谨慎配置。为了避免您的业务受影响,建议在使用增删只读节点功能时,在“数据库代理”中将Serverless节点设置为相同权重或使用负载均衡模式。 一个实例支持的最大只读节点的个数为15。因此,增删只读节点策略的只读节点上限与实例中原有的非Serverless节点个数总和不能
该场景下,SQL语句一般比较简单,执行效率也高,数据库侧优化余地小,需要从业务源头优化。 解决方案: 单纯的QPS高导致CPU使用率过高,往往出现在实例规格较小的情况下,建议升级实例CPU规格。 优化慢查询,优化方法参照场景1 慢查询导致CPU升高的解决方案。若优化慢查询后效果不明显,建议升级实例CPU规格。 对
查询慢日志中记录SQL执行65秒,但是扫描行数为0。 原因分析 被中断的查询超过慢日志设置阈值也会记录慢日志,但是所记录的扫描行数为0。客户JDBC连接设置了查询超时: 解决方案 优化SQL或者将sockTimeOut设置合理值。 父主题: 基本使用类