深入MySQL优化:提升数据库性能的关键策略

2024年 3月 14日 57.1k 0

MySQL优化

从设计上,可根据需要:分库分表、读写分离、冷热分离、使用缓存、定期进行数据清理。

从客户端使用上,使用连接池、避免大事务、返回数据多使用物理分页。

从优化MySQL配置文件上,调整MySQL配置文件中的参数,如缓冲区大小、最大连接数等,以适应应用程序的需要。

从优化表结构上,使用合适的存储引擎;避免使用大型或不必要的列,并尽可能使用小型数据类型;尽量把字段设置为NOT NULL;对于某些文本字段来说,例如“省份”或者“性别”,我们可以将他们定义为ENUM(枚举)类型。因为在MySQL中,ENUM类型被当做数值型数据来处理,而数值型数据被处理起来的速度要比文本类型要快得多。

从优化查询上,善用EXPLAIN查看SQL执行计划;使用连接(JOIN)来代替子查询,减少在内存中创建临时表;尽量用union all代替union减少排序;利用小表去驱动大表,减少嵌套循环中的循环次数,以减少 IO总量及CPU运算的次数;善用索引。 

查询在什么时候不走索引、索引失效 

1.不满足走索引的条件,常见的情况有 

1.1 不满足最左匹配原则 

1.2 查询条件使用了函数 

1.3 or操作有一个字段没有索引 

1.4 使用like条件以%开头 

1.5 显式或隐式类型转换导致索引失效 

1.6 存在范围查询,比如between、>、

相关文章

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

发布评论