阿里云数据库 MySQL优化经验分享

2023年 10月 31日 60.7k 0

阿里云数据库 MySQL优化经验分享阿里云数据库 MySQL优化经验分享

本人负责的项目主要采用阿里云数据库 MySQL,最近频繁出现慢 SQL 告警,执行时间最长的竟然高达 5 分钟。导出日志后分析,主要原因竟然是没有命中索引和没有分页处理。其实这是非常低级的错误,我不禁后背一凉,团队成员的技术水平亟待提高啊。改造这些 SQL 的过程中,总结了一些经验分享给大家,如果有错误欢迎批评指正。MySQL 性能

①最大数据量

抛开数据量和并发数,谈性能都是耍流氓。MySQL 没有限制单表最大记录数,它取决于操作系统对文件大小的限制。阿里云数据库 MySQL优化经验分享《阿里巴巴 Java 开发手册》提出单表行数超过 500 万行或者单表容量超过 2GB,才推荐分库分表。性能由综合因素决定,抛开业务复杂度,影响程度依次是硬件配置、MySQL 配置、数据表设计、索引优化。500 万这个值仅供参考,并非铁律。

我曾经操作过超过 4 亿行数据的单表,分页查询最新的 20 条记录耗时 0.6 秒,SQL 语句大致是:

select field_1,field_2 from table where id  (select id from orders order by id desc  limit 1000000, 1) order by id desc limit 0,10
耗时0.5秒

如果查询条件仅有主键 ID,写法如下:

select id from orders where id between 1000000 and 1000010 order by id desc
耗时0.3秒

如果以上方案依然很慢呢?只好用游标了,感兴趣的朋友阅读 JDBC 使用游标实现分页查询的方法。其他数据库

阿里云数据库 MySQL优化经验分享作为一名后端开发人员,务必精通作为存储核心的 MySQL 或 SQL Server,也要积极关注 NoSQL 数据库,他们已经足够成熟并被广泛采用,能解决特定场景下的性能瓶颈。来源:数据与人

链接:www.cnblogs.com/xiaoyangjia/p/11267191.html  

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论