MySQL是怎样运行的读书笔记

MySQL是怎样运行的读书笔记,第1张

《MySQL是怎样运行的:从根儿上理解 MySQL》是一本MySQL的底层运行原理的书。关于底层运行原理4个字怎么理解呢,我的理解是专注于介绍 MySQL 的 innoDB的底层存储细节,并以此为基础延伸到分析MySQL 实际应用中的特性。

相比极客时间里面的《MySQL 实战45讲》,我觉得这本书更像电视剧《一代宗师》里面讲到的里子而非面子,更聚焦于事情的本质而非表象,所以非常推荐大家耐心阅读。我是3.28号收到的书,在上下班的路上断断续续完成了阅读(这就是上下班需要花3个小时的好处),所谓的断断续续就是每个点都了解了,但是没有串成线形成面。今天刚好周六就抽了一下午加一晚上把所有的内容从头到位又串联了一次,整体下来差不多花了两周时间才消化完。

为啥对 MySQL突然来了兴趣呢,缘于2021年底以来公司内部组织了两场分享,当时听完分享后针对分享的PPT消化了一波,但是总感觉不得劲。虽然理解了分享中部分场景但却无法理解背后的原理,所以断断续续在网上搜集些介绍 MySQL 的书籍就发现了这本书,阅读后再重新回顾之前的分享,感觉突然开窍了。

梳理了下整个书本的内容,按照个人的理解给出阅读的建议,首先这部分的内容其实挺多的,但是建议聚焦于几条核心的线:innoDB的数据存储,索引的设计和应用,redo/undo 日志以及 mvcc 的原理。

关于 innoDB 的存储,这部分建议阅读章节: 从一条记录说起—— InnoDB 记录结构、盛放记录的大盒子 —— InnoDB 数据页结构、 调节磁盘和CPU的矛盾 —— InnoDB 的 Buffer Pool》。这三个章节按照数据存储由微观到宏观的顺序进行讲解:单条记录的存储结构、页维度的存储结构、Buffer Pool 的存储结构等。

索引的设计和应用,这部分阅读建议建立在innoDB的存储相关章节已经完成阅读的基础上,相关章节包括: 快速查询的秘籍 —— B+ 树索引、 好东西也得先学会怎么用 —— B+ 树索引的使用。这两个章节介绍索引的存储结构以及实际应用,跟日常工作比较有强关联性。

redo/undo 日志以及 mvcc 的原理,这部分建议阅读章节: 说过的话就一定要办到 —— redo 日志(上)、 说过的话就一定要办到 —— redo 日志(下)、 后悔了怎么办 —— undo 日志 (上)、 后悔了怎么办 —— undo 日志 (下)、 一条记录的多幅面孔 —— 事务的隔离级别与MVCC。这几个章节主要是为了讲清楚 MVCC 的底层实现原理。

最后推荐对 MySQL 有兴趣的同学可以买来翻翻看,收获肯定是有的。

用来查询数据库中表的数据。关键字: select 、where 等。

注:查询只是对数据的一种显示,不会对数据库进行修改

1.查询所有数据 select * from 表 “*” 表示所有列; select id ,name, age, sex, birthday from 表 (注:全部字段写法相对于“*”的写法查询效率要高,但写法比较麻烦)

2.查询部分列 select 字段1, 字段2……. from 表

3.别名查询( 别名作用是方便观看和处理数据)查询时可以给表、列指定别名,关键字: AS

SELECT 字段1 AS 别名1,字段2 AS 别名2……. from 表 或者 SELECT 字段1 别名1,字段2 别名2……. from 表 ; AS 可以不写

4.清除重复值 ( 查询指定列并且数据不出现重复 ): SELECT DISTINCT 字段1,字段2...... FORM 表

5.查询结果进行运算 ( 注意:参与计算列必须是数值类型 )

5.1与固定值计算: SELECT 列名1+固定值 FROM 表

5.2列与列计算 : SELECT 列1+ 列2 FROM 表

6.条件查询 SELECT * From 表 WHERE 字段 = 值


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7314101.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存