MySQL性能优化
文章平均质量分 89
介绍 MySQL 性能优化的各个方面,包括 MySQL 体系结构和优化原理、表结构和索引优化、SQL 语句优化、实例优化、服务器硬件优化以及应用架构优化等。
不剪发的Tony老师
《SQL编程思想》作者,PostgreSQL ACE。
展开
-
【八万字总结】MySQL性能优化
MySQL性能优化,包括库表结构、索引、查询、硬件、服务器以及架构六个方面的优化内容。原创 2023-10-07 16:24:13 · 1347 阅读 · 0 评论 -
MySQL全表扫描一定存在性能问题吗?
MySQL 执行计划中出现全表扫描,并不一定代表查询存在性能问题,也可能是 MySQL 优化器经过分析之后的正确选择。常见的应用案例包括数据量很少的小表,数据仓库中的聚合分析等。原创 2023-06-25 20:00:00 · 879 阅读 · 0 评论 -
《MySQL 性能优化》之覆盖索引不是索引
覆盖索引(Covering Index)是指查询语句通过索引访问就可以返回所需的结果,不需要访问表中的数据。覆盖索引是优化器选择的一种执行计划,任何索引在某种情况下都可能称为覆盖索引。原创 2021-04-22 10:37:50 · 1471 阅读 · 5 评论 -
MySQL 优化器原来是这样工作的
MySQL 优化器使用基于成本的优化方式(Cost-based Optimization),利用内置的成本模型和数据字典信息以及存储引擎的统计信息决定使用哪些步骤实现查询语句,也就是查询计划。同时,MySQL 为我们提供了控制优化器的各种选项,包括控制优化程度、设置成本常量、统计信息收集、启用/禁用优化行为以及使用优化器提示等。原创 2020-07-02 14:55:35 · 5659 阅读 · 10 评论 -
你确定你读懂了 MySQL 执行计划吗?
MySQL 执行计划(execution plan,也叫查询计划或者解释计划)是服务器执行 SQL 语句的具体步骤。本文通过具体案例详细介绍了如何使用各种 EXPLAIN 语句获取 MySQL 预期执行计划和实际执行计划,并且深入分析了结果中的每个字段的含义,包括访问谓词与过滤谓词的区别。原创 2020-06-24 17:09:18 · 5505 阅读 · 5 评论 -
只要心中有 B-树,SQL 优化就不怵
B-树(B+树、B*树)索引极大地减少了随机磁盘的访问,同时具有对数时间复杂度,几乎不受数据量的影响;因而是我们进行 SQL 优化的最有效、最常用的方法。本文介绍了索引的原理和优缺点,以及如何利用索引优化各种查询条件、连接查询、排序和分组以及 DML 语句,以及我们在创建索引和编写 SQL 语句时需要遵循的原则。原创 2020-06-22 22:51:14 · 5383 阅读 · 1 评论 -
《MySQL 性能优化》之数据库事务与隔离级别
在数据库中,事务是指一组相关的 SQL 语句操作,它们在业务逻辑上是一个原子单元。数据库事务具有 ACID 属性:原子性(Atomic)、一致性(Consistency)、隔离性(Isolation)以及持久性(Durability)。MySQL 中的 InnoDB 存储引擎具有事务安全性,实现了 SQL 标准中的 4 种隔离级别,能够保证多个用户并发访问相同数据时的数据一致性和完整性;同时也不会由于系统崩溃或硬件故障导致数据的破坏。原创 2020-03-31 17:35:29 · 2807 阅读 · 0 评论 -
《MySQL 性能优化》之 InnoDB 存储引擎
InnoDB 是一个具有高可靠性和高性能的通用存储引擎,也是 MySQL 5.5 之后的默认存储引擎。本文介绍 InnoDB 存储引擎的体系结构,包括内存组件和物理磁盘结构。原创 2020-02-18 09:46:49 · 5308 阅读 · 6 评论 -
《MySQL 性能优化》之理解 MySQL 体系结构
本文介绍 MySQL 的体系结构,包括物理结构、逻辑结构以及插件式存储引擎。原创 2020-02-10 10:40:03 · 81686 阅读 · 42 评论