先搞清楚:这门课解决什么问题
很多做后端开发或运维的上班族,平时写业务接口时增删改查都能跑通,可一旦项目数据量上来、或者遇到并发稍高的活动,页面响应就肉眼可见地变慢。这时候往往不知道该从哪里下手,只能盲目搜博客、照着改几行参数,结果治标不治本。这门 MySQL 优化课针对的就是这个场景:它不教基础语法,而是帮你建立一套排查和调优的判断思路。核心解决两件事——第一,怎么从一堆正在跑的语句里,准确揪出真正拖慢系统的那几条;第二,找到之后,用什么手段去干预,比如存储引擎怎么选、索引怎么加才有效。它强调优化不是背招式,而是先判断方向,再动手,这对经常需要在线上救火的同学来说很实用。
适合什么基础,建议先看哪几块
这门资料不适合完全没碰过数据库的转行者,它默认你已经能独立写基本的查询语句,知道表结构怎么建,日常工作中会接触实际的业务库。如果你目前处于“会用但不懂底层”的阶段,这套内容正好补齐你缺的那块拼图。建议拿到资料后,不要从头按顺序死磕,优先看慢查询日志和 profile 机制那几节,这是排查问题的入口,学会怎么定位慢语句,后面的存储引擎特性和索引设计才有着力点。存储引擎部分的对比讲解也值得重点看,尤其是 InnoDB 和 MyISAM 在存储顺序与并发性上的差异,理解了这些,你在建表初期的选型就不会拍脑袋。
学完能独立做什么,资料怎么配合练习
学完这套内容,你应该能独立处理一次完整的慢查询排查:先开启日志抓取问题语句,用 profile 精确看每一步的耗时,然后判断是表结构选型问题还是索引缺失,最后给出优化方案并验证效果。资料配合练习的方式很关键,光看视频不动手基本等于白学。建议自己本地建一个测试库,故意往里面灌几万条以上的数据,模拟慢查询场景,跟着视频里的步骤一步步开启日志、分析执行计划。索引那部分一定要自己在表上创建、删除、对比查询时间,亲手感受加了索引和没加的区别,这比看十遍视频都管用。
本课是一门基于MySQL数据库的性能优化课, 性能优化是一门艺术,比较抽象,它没有固定的招式,优化的关键是学习一种思路,判断一个方向,最后就是一“键”定胜负!
课程目录
* 第一章 网站优化/
* MySQL优化概述/
* 01-优化介绍与存储引擎
* 储存引擎/
* 02-innodb存储引擎的特性1-存储格式
* 03-innodb存储引擎的特性2-数据存储顺序和并发性
* 04-myisam存储引擎的特性1-存储形式&存储顺序&并发性
* 05-myisam存储引擎的特性2-压缩性
* 06-memory存储引擎&存储引擎的取舍
* 慢查询操作/
* 07-查找需要优化的语句-慢查询日志01
* 08-查找需要优化的语句-慢查询日志02
* 09-查找需要优化的语句-精确记录查询时间-profile机制
* 索引/
* 10-索引的介绍
* 11-创建索引
* 12-删除&查看索引和创建索引的注意事项
* 13-执行计划explain
* 14-myisam索引的数据结构
* 15-innodb索引的数据结构
* 16-索引覆盖
* 17-索引的使用原则1-列独立和like查询
* 18-索引的使用原则2-or运算和复合索引
* 19-索引的使用原则3-智能选择和优化group by
* 01-前缀索引
* 02-全文索引
* 查询缓存/
* 03-查询缓存1-配置和使用
* 04-查询缓存2-无缓存的情景和查看缓存情况
* limit分页/
* 05-limit分页优化
* 分区技术/
* 06-分区技术介绍
* 07-分区算法之list
* 08-分区算法之range
* 09-分区算法之hash和key
* 10-分区管理
* 锁机制/
* 13-mysql锁机制介绍
* 14-mysql锁机制表锁演示
* 15-mysql锁机制行锁演示
* 16-mysql锁机制PHP代码实现
* 碎片管理/
* 17-mysql中数据碎片修复
* 范式和反三范式/
* 18-范式和反三范式
* 分表技术/
* 11-分表技术之水平分表
* 12-分表技术之垂直分表






