25、数据库无法启动,如何读取InnoDB文件中的数据(上)你好,我是俊达。这一讲我们来了解下InnoDB的物理存储格式。 了解物理存储格式有什么作用呢?有时,由于系统表空间或其他物理文件损坏,数据库可能无法启动,即使设置了参数innodb_force_recovery还是无法启动。有时,由于误操作把表DRO...2026-01-19MySQL运维实战课
24、10+ SQL执行性能不佳的真实案例(下)你好,我是俊达。这节课我们继续看剩下的几个案例。 案例七:优化or查询的另一个例子下面是另一个在where中使用了or的例子,这个SQL的性能非常差,需要将3个表的数据全部关联起来。 1234567SELECT t_msg.msg_id,t_msg....2026-01-19MySQL运维实战课
23、10+ SQL执行性能不佳的真实案例(上)你好,我是俊达。 在第二章 SQL优化篇的前面几讲中,我们比较系统地学习了MySQL中SQL优化的基础知识,包括索引访问的原理、优化器成本模型、表连接的几种算法、表连接顺序的计算、子查询的优化策略。在这一讲里,我整理了工作中遇到过的十多种不同类型的S...2026-01-19MySQL运维实战课
22、MySQL子查询优化策略你好,我是俊达。 这一讲,我们来讨论子查询的一些优化策略。子查询是SQL很重要的一个能力,平时也不少见。 子查询的一个例子早期MySQL(5.5以及更早的版本)对子查询的支持比较弱,使用子查询时容易遇到性能问题。 在13讲的思考题中,就有一个执行了几...2026-01-19MySQL运维实战课
21、表连接如何执行你好,我是俊达。 这一讲我们来聊一聊MySQL中的表连接是怎么执行的。 从功能或语法上来看,表连接有内连接(Inner Join)和外连接(Outer Join)。外连接又包括左连接(Left Outer Join)、右连接(Right Outer ...2026-01-19MySQL运维实战课
20、单表查询:如何评估单表访问成本你好,我是俊达。 上一讲中我们介绍了优化器的工作原理,并介绍了全表扫描和索引范围扫描的成本评估方法。在这一讲中,我们继续来学习单表查询的其他几种访问路径:REF、覆盖索引、MRR、Index Merge。最后,我们还将通过一个真实的业务场景,来讨论怎...2026-01-19MySQL运维实战课