检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
by的时候,尽量在合理的情况下设置可以包含所有依赖字段的索引,优化示例: 没有合适索引,导致需要用到临时表。 有合适的索引,不会使用临时表,直接走索引。 解决方案 在使用distinct或group by的时候,尽量在合理的情况下,创建可以包含所有依赖字段的索引。 父主题: SQL类
g temporary、using filesort,如果有,说明该语句用到了临时表或临时文件,数据量大的情况下,会导致磁盘占用高。 解决方案 复杂查询语句导致磁盘打满,建议客户从业务侧优化响应查询语句,常见优化措施: 加上合适的索引。 在where条件中过滤更多的数据。 重写SQL,优化执行计划。
g temporary、using filesort,如果有,说明该语句用到了临时表或临时文件,数据量大的情况下,会导致磁盘占用高。 解决方案 复杂查询语句导致磁盘打满,建议客户从业务侧优化响应查询语句,常见优化措施: 加上合适的索引。 在where条件中过滤更多的数据。 重写SQL,优化执行计划。
tables where table_schema='db_name' and table_name = 'table_name'\G 解决方案 针对表空间膨胀的问题,可以进行表空间优化整理,从而缩小空间,执行如下SQL命令: optimize table table_name; optimize
速度极快。当数据迁移到云上TaurusDB时,第一次执行同样的SQL语句,很可能是冷数据,就会访问较慢,但再次访问速度就会得到提升。 解决方案 该场景是正常现象,在同一个数据库中,我们经常会遇到第一次执行一条语句时很慢,但再次执行就很快,也是因为受到了buffer_pool的冷热数据原理的影响。
tables where table_schema='db_name' and table_name = 'table_name'\G 解决方案 针对表空间膨胀的问题,可以进行表空间优化整理,从而缩小空间,执行如下SQL命令: optimize table table_name; optimize
速度极快。当数据迁移到云上TaurusDB时,第一次执行同样的SQL语句,很可能是冷数据,就会访问较慢,但再次访问速度就会得到提升。 解决方案 该场景是正常现象,在同一个数据库中,我们经常会遇到第一次执行一条语句时很慢,但再次执行就很快,也是因为受到了buffer_pool的冷热数据原理的影响。
原因分析 优先检查网络是否已经连通,如果不带SSL的连接方式可以连接,则可能是mysql client或对应的数据库驱动的版本不兼容。 解决方案 TaurusDB是兼容社区8.0以上版本的,需要使用8.0及以上版本的mysql client或数据库驱动。 SSL(Secure Socket
放page的过程中会去获取page所在索引根节点的SX锁,导致select语句无法获取到根节点page的rw-lock,一直在等待。 解决方案 该场景为正常现象,等待purge操作完成后即可恢复正常。 扩大实例规格,提高purge效率。 调整优化业务,避免突然删除大量数据。如果需
如果事务当前的状态是LOCK WAIT,即表示事务持有行锁。 ROLLING BACK:正在回滚。 COMMITTING:正在提交。 解决方案 由于持锁长事务长时间未提交或回滚导致后续操作阻塞,如果持锁长事务已经阻塞了后续的业务,需要将长事务KILL,后续业务侧尽量避免持锁长事务。
原因分析 优先检查网络是否已经连通,如果不带SSL的连接方式可以连接,则可能是mysql client或对应的数据库驱动的版本不兼容。 解决方案 TaurusDB是兼容社区8.0以上版本的,需要使用8.0及以上版本的mysql client或数据库驱动。 SSL(Secure Socket
如果事务当前的状态是LOCK WAIT,即表示事务持有行锁。 ROLLING BACK:正在回滚。 COMMITTING:正在提交。 解决方案 由于持锁长事务长时间未提交或回滚导致后续操作阻塞,如果持锁长事务已经阻塞了后续的业务,需要将长事务KILL,后续业务侧尽量避免持锁长事务。
方文档。 当MySQL检查到死锁的表时,会进行事务的回滚。其影响范围不仅是某个表,还会影响外键所在的表,最终导致数据库相关操作变慢。 解决方案 建议排查并优化死锁表相关的业务,业务上合理使用外键,避免更新冲突,避免产生死锁。 父主题: 性能资源类
自增主键的字段取值达到上限,无法继续增长,导致新插入的数据生成的自增主键值与表中上一条数据相同,因为自增主键的值不可重复,插入失败报错。 解决方案 如果数据变化较多,表中实际数据量远小于自增主键的容量,则可以考虑将该表的数据全量导入新表,删除原表,然后rename将新表名改回原表名。
放page的过程中会去获取page所在索引根节点的SX锁,导致select语句无法获取到根节点page的rw-lock,一直在等待。 解决方案 该场景为正常现象,等待purge操作完成后即可恢复正常。 扩大实例规格,提高purge效率。 调整优化业务,避免突然删除大量数据。如果需
方文档。 当MySQL检查到死锁的表时,会进行事务的回滚。其影响范围不仅是某个表,还会影响外键所在的表,最终导致数据库相关操作变慢。 解决方案 建议排查并优化死锁表相关的业务,业务上合理使用外键,避免更新冲突,避免产生死锁。 父主题: 性能资源类
tables where table_schema='db_name' and table_name = 'table_name'\G; 解决方案 针对表空间膨胀的问题,可以进行表空间优化整理,从而缩小空间,执行如下SQL命令: optimize table table_name; optimize
tables where table_schema='db_name' and table_name = 'table_name'\G; 解决方案 针对表空间膨胀的问题,可以进行表空间优化整理,从而缩小空间,执行如下SQL命令: optimize table table_name; optimize
自增主键的字段取值达到上限,无法继续增长,导致新插入的数据生成的自增主键值与表中上一条数据相同,因为自增主键的值不可重复,插入失败报错。 解决方案 如果数据变化较多,表中实际数据量远小于自增主键的容量,则可以考虑将该表的数据全量导入新表,删除原表,然后rename将新表名改回原表名。
emoji表情为特殊字符,需要4字节字符集存储。 该问题场景下,数据库字符集为utf-8,它最多支持3个字节;utf8mb4才是支持4个字节的字符集; 解决方案 将存储emoji表情的字段的字符集修改为utf8mb4。 如果涉及的表和字段比较多,建议把对应表、数据库的编码也设置为utf8mb4。参考命令: