我当年学MySQL,要是有这个项目就好了...(收藏不亏)

之前写过不少MySQL相关的文章:

MySQL缓冲池,终于讲清楚了

数据库允许空值(null),往往是悲剧的开始

MySQL性能调优,必须掌握这一个工具

沈老师,你是怎么学习MySQL相关知识的?

吹流弊的说法是,我只信MySQL官网。

实事求是来说,看官网,我也是被逼无奈。

一来,中文资料平均有1-2年延时;

二来,很多信息,各个地方说的还都不一样,不知道信谁;

三来,不知道要系统性学哪些;

于是,就啃一了个大而全的官网。

沈老师,我是一个普通开发者,要学哪些MySQL知识呢?

MySQL,之于普通开发者,这四方面够用了

(1)表设计;

(2)索引设计;

(3)SQL性能调优;

(4)MySQL常见业务实践;

画外音:能成为Top10%的MySQL开发者么?

沈老师,要怎么学这些内容呢?

只是这4项的话,不要去啃MySQL官网,太枯燥太低效了。我推荐这个项目给你。

项目名称:mysql-for-developers

项目链接

https://planetscale.com/learn/courses/mysql-for-developers

mysql-for-developers是什么?

这不是一个开源的git项目,而是planetscale开放的一个针对MySQL开发者的免费课程。

画外音:某些原因,文末再介绍planetscale。

mysql-for-developers有什么特点?

(1)针对开发者,不全面但实用;

画外音:不涉及运维,架构,内核。

(2)视频文字双管齐下;

(3)不枯燥,有很多具体的例子,通俗易懂;

mysql-for-developers只有四个章节,重头戏是中间两个章节。

4ae573921c0a7bd3b4fdb79e8af078e1.png

第一章,表(schema)设计。

画外音:要是觉得初级,可以跳过。

231c172f7a0f3e7aa7a313dc27ca713d.png

第二章,重点,索引(indexing)设计。

这一章介绍了:

主键索引(primary key)

普通索引(secondary key)

主键数据类型(primary key data type)

索引怎么添加(where to add)

3f3c15f183ad0e4a50d5d6774f71eefb.png

画外音:索引一般添加在 where, order by, join, group by ... 等相关列上。

索引选择(index selectivity)

前缀索引(prefix index)

复合索引(composite index)

覆盖索引(covering index)

全文索引(fulltext index)

...

基本上常见的场景与索引都涵盖了。

68d03001c0d0374fcc838435b60f29e7.png

第三章,重点,SQL性能调优。

这一章介绍了:

EXPLAIN工具

行数限制(limit)

连接(join)

子查询(subquery)

b5e84f66254b458afd0cc672cee494a5.png

画外音:SQL优化都有非常直观的案例。

表达式(expression)

递归(recursive)

UNION

空值(NULL)

排序(sorting)

...

等多种场景下的SQL调优。

通过SQL实现业务功能未必难,用最优的SQL才最体现开发者的功底。

3d5e72c155ddebf9356caeb35c2a9529.png

第四章,案例:MD5场景,位操作场景,布尔值场景,时间戳场景,汇总表场景,元数据表场景,分页场景,地理位置搜索场景... 等多个场景业务场景,都有非常详细的说明。

另外,视频文字双管齐下,也是这个项目的特色。

df5c4480f274d68271cdce482fa64f33.png

左侧是各章节的目录,右侧是课程视频。

ab657f8162f1ec076674613ad4c0fd90.png

如果嫌视频进度太慢,课程视频的下面有文字说明。

mysql-for-developers还有一个大优点:学习成功率高!

啃MySQL官网,没有一两个月啃不下来,容易中途劝退。

而这个项目,只讲工程师用得到的,总长只有4-5个小时,并且切碎成了5-15分钟的知识点,大家可以按需学习,让参与学习的童鞋信心指数大增。

这个planetscale开放的MySQL免费课程的介绍接近尾声了,正常情况下,按照我的习惯,要吹一波课程的“主人”planetscale,但这一次...

1e1eea56c8ae49d1e386de12d1878655.png

它居然...

service not available in China.

好吧,大家散了吧,学免费的课程就好。

工作期间的8小时,求生存;

工作之外的8小时,谋发展。

咱们一起,学起来!

MySQL历史文章:

MySQL缓冲池,终于讲清楚了

数据库允许空值(null),往往是悲剧的开始

MySQL性能调优,必须掌握这一个工具

帮忙分享给有需要的朋友,谢转。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值