Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 Reference Manual  /  Optimization

Chapter 10 优化

Table of Contents

10.1 优化 Overview
10.2 Optimizing SQL 语句
10.2.1 Optimizing 选择语句s
10.2.2 优化子查询, Derived Tables, View References, and Common Table Expressions
10.2.3 优化INFORMATION_SCHEMA查询
10.2.4 Optimizing 性能模式查询
10.2.5 优化数据更改语句
10.2.6 优化数据库权限
10.2.7 Other 优化 Tips
10.3 优化 and Indexes
10.3.1 How MySQL Uses 索引
10.3.2 Primary Key 优化
10.3.3 SPATIAL Index 优化
10.3.4 Foreign Key 优化
10.3.5 Column 索引
10.3.6 Multiple-Column 索引
10.3.7 验证索引使用情况
10.3.8 InnoDB和MyISAM索引统计信息收集
10.3.9 Comparison of B-Tree and Hash 索引
10.3.10 索引扩展的使用
10.3.11 Optimizer Use of Generated Column 索引
10.3.12 Invisible 索引
10.3.13 Descending 索引
10.3.14 从TIMESTAMP列进行索引查找
10.4 优化数据库结构
10.4.1 优化数据大小
10.4.2 Optimizing MySQL 数据类型
10.4.3 Optimizing for Many 表
10.4.4 MySQL中内部临时表的使用
10.4.5 Limits on Number of Databases and 表
10.4.6 表大小限制
10.4.7 表列数和行大小限制
10.5 Optimizing for InnoDB 表
10.5.1 Optimizing Storage Layout for InnoDB 表
10.5.2 优化InnoDB事务管理
10.5.3 优化InnoDB只读事务
10.5.4 Optimizing InnoDB 重做日志ging
10.5.5 Bulk Data Loading for InnoDB 表
10.5.6 优化InnoDB查询
10.5.7 优化InnoDB DDL操作
10.5.8 Optimizing InnoDB 磁盘 I/O
10.5.9 Optimizing InnoDB 配置 Variables
10.5.10 针对具有大量表的系统优化 InnoDB
10.6 MyISAM 表优化
10.6.1 MyISAM 查询优化
10.6.2 MyISAM 表的批量数据加载
10.6.3 Optimizing 修复表语句s
10.7 MEMORY 表优化
10.8 理解查询执行计划
10.8.1 使用 EXPLAIN 优化查询
10.8.2 EXPLAIN 输出格式
10.8.3 Extended EXPLAIN 输出格式
10.8.4 获取命名连接的执行计划信息
10.8.5 估计查询性能
10.9 控制查询优化器
10.9.1 控制查询计划评估
10.9.2 Switchable 优化s
10.9.3 优化器提示
10.9.4 索引提示
10.9.5 优化器成本模型
10.9.6 优化器统计
10.10 缓冲和缓存
10.10.1 InnoDB Buffer Pool 优化
10.10.2 MyISAM 键缓存
10.10.3 Caching of 预处理语句 and Stored Programs
10.11 优化锁定操作
10.11.1 内部锁定方法
10.11.2 表锁定问题
10.11.3 并发插入
10.11.4 元数据锁定
10.11.5 外部锁定
10.12 优化 MySQL 服务器
10.12.1 优化磁盘 I/O
10.12.2 使用符号链接
10.12.3 优化内存使用
10.13 Measuring Performance (Benchmarking)
10.13.1 Measuring the Speed of 表达式 and Functions
10.13.2 使用您自己的基准测试
10.13.3 使用 performance_schema 测量性能
10.14 Examining Server Thread (Process) Information
10.14.1 访问进程列表
10.14.2 线程命令值
10.14.3 一般线程状态
10.14.4 复制 Source Thread States
10.14.5 复制 I/O (Receiver) Thread States
10.14.6 复制 SQL Thread States
10.14.7 复制 Connection Thread States
10.14.8 NDB 集群线程状态
10.14.9 事件调度器线程状态

This chapter explains how to optimize MySQL performance and provides examples. Optimization involves configuring, tuning, and measuring performance, at several levels. Depending on your job role (developer, DBA, or a combination of both), you might optimize at the level of individual SQL statements, entire applications, a single database server, or multiple networked database servers. Sometimes you can be proactive and plan in advance for performance, while other times you might troubleshoot a configuration or code issue after a problem occurs. Optimizing CPU and memory usage can also improve scalability, allowing the database to handle more load without slowing down.