MySQL学习路线(建议收藏🔥)

沉默王二2022年10月18日
  • 学习路线
  • 学习路线
约 2624 字大约 9 分钟

MySQL 在校招面试中,被问到的频率非常高;在日常开发中,MySQL 的使用频率也非常高,几乎是 Java 后端开发必须掌握的技术栈,所以 MySQL 也被二哥归纳到了Java 后端四大件中。

第一阶段:SQL

学习 MySQL 之前,先学一手 SQL,对后面学习 MySQL 也会有非常大的帮助。

视频

可以先学习 SQL,推荐中字《10小时零基础成长SQL大师》,虽然是一门国外的课程,但画面实在是太优美了,必须得推荐啊,尤其对初学者而言,直接入手这个版本能塑造良好的SQL编写思维和逻辑能力。看不懂就多看几遍嗷!

这个视频虽然只需要 10 小时,但讲的内容还是非常全面的,包括 select、where、and、in、like、order by、limit、inner join、self join、outer join、union、insert、update、delete、group by等等。

视频地址:https://www.bilibili.com/video/BV1UE41147KCopen in new window

书籍

书的话,有两本,一本是《SQL 必知必会open in new window》,一本是《SQL基础教程(第2版)open in new window》,任选一本即可。

第二阶段:入门 MySQL

SQL 学完,再学 MySQL 就会更加丝滑,学习曲线会平滑一些。

视频

视频的话,可以在B 站上搜 MySQL 关键字,基本上各大培训机构都有公开的视频课,课程质量也不错。随便挑一个自己喜欢的跟着学就对了。

如果是声控的同学,推荐尚硅谷宋红康老师的《MySQL数据库教程天花板,mysql安装到mysql高级,强!硬!》,视频涉及到的内容数据库概述和 MySQL 的安装、SQL 之 select 使用、SQL 之 DDL、DML、DCL 使用、(视图、存储过程与函数、变量、流程控制、游标、触发器)等等内容。

有同学对这门视频的评价是声音要听起来比较容易勾起学习的欲望,所讲的内容要比较容易消化吸收。

视频地址:https://www.bilibili.com/video/BV1iq4y1u7vjopen in new window

如果喜欢女老师上课的话,推荐尚硅谷的另外一门课《MySQL基础教程丨mysql数据库实战》视频课,一共 178 集,基本上覆盖了 MySQL 的核心技术点,包括数据库和表的常用操作、约束、视图、存储过程等内容。不过,这个视频的录音质量真的是不太高,建议大家不要带耳机来修这门课。

视频地址:https://www.bilibili.com/video/BV1xW411u7axopen in new window

如果想突击 MySQL 的话,推荐《老杜带你学_mysql入门基础》,据说 3 天就能学完,一共 151 集,有同学对课程进行了总结提炼,这里也贴一下博客地址:

博客地址:https://blog.csdn.net/weixin_43896929/article/details/120750965open in new window

视频地址:https://www.bilibili.com/video/BV1Vy4y1z7EXopen in new window

书籍

书籍的话,推荐《MySQL 是怎样使用的、快速入门 MySQLopen in new window》、《MySQL 必知必会open in new window》,任选一本就可以。

《MySQL 是怎样使用的、快速入门 MySQL》这本书在掘金上也有小册open in new window,如果购买过这本小册的话,也就不用再购买纸质书了。

MySQL 学习建议

一定要在本机上把 MySQL 数据库先安装了,直接通过 MySQL 官网下载,建议安装 MySQL 5.7 以上版本。

https://dev.mysql.com/downloads/mysql/open in new window

安装完成后,记得安装可视化工具:Navicat,方便操作。

星球里分享过 macOS 的 Navicat 破解版:

https://t.zsxq.com/04eMf6AMZopen in new window

Windows 的话,在 Java 程序员进阶之路上分享过破解方法:

https://tobebetterjavaer.com/nice-article/itmind/navicatzxbwindowspjbjc.htmlopen in new window

破解方法请勿外传,保密就对了

这个阶段,一定要把基本的 SQL 语句练一练:

  • SELECT - 从数据库中提取数据
  • UPDATE - 更新数据库中的数据
  • DELETE - 从数据库中删除数据
  • INSERT INTO - 向数据库中插入新数据
  • CREATE DATABASE - 创建新数据库
  • ALTER DATABASE - 修改数据库
  • CREATE TABLE - 创建新表
  • ALTER TABLE - 变更(改变)数据库表
  • DROP TABLE - 删除表
  • CREATE INDEX - 创建索引(搜索键)
  • DROP INDEX - 删除索引

在之后可以到牛客上,把 SQL 相关的练习题刷一波。

https://www.nowcoder.com/ta/sqlopen in new window

如果你是测试人员、业务人员、数据分析岗,或者实习岗,一般掌握到这个成都就可以了。如果你是 Java 后端开发人员,或者 DBA,那就要往进阶层面走了。

第三阶段:进阶 MySQL

面试造火箭,工作拧螺丝,虽然日常开发中,大部分人也就写写 SQL 就行了,但不好意思,面试中(或者你想成为 MySQL 方面的专家)99% 的情况下,还是会被问到原理的,比如说索引、锁、日志、引擎等。

举一些例子:

1、一条 SQL 是如何执行的?也就是说,从MySQL 客户端执行了一条 SQL 语句,MySQL 服务端会进行哪些处理。

2、索引相关:索引是如何实现的?MySQL 的索引采用的哪种数据结构?哈希索引和 B+ 树索引的区别是什么?

3、事务相关:事务的四大特性是什么?什么是幻读、脏读、不可重复读?、MVCC 了解吗?怎么实现的?

4、锁相关:表锁、行锁、意向锁、乐观锁、死锁,这些锁主要是用来解决什么问题的?

5、日志相关:MySQL 日志文件有哪些?binlog 和 redo log 有什么区别?redo log 是怎么刷入磁盘的呢?

6、高可用/性能相关:数据库读写分离了解吗?读写分离是如何实现的?主从复制的原理了解吗?分库分表了解吗?

7、SQL 优化相关:慢 SQL 如何定位?如何优化慢 SQL?

书籍

推荐《高性能 MySQLopen in new window》、《MySQL 是怎样运行的:从跟上理解 MySQLopen in new window》、《MySQL技术内幕:InnoDB存储引擎open in new window》。

《高性能 MySQL》出到了第四版,和第三版比,删除了不少内容,更精简了。

《MySQL 是怎样运行的:从跟上理解 MySQL》这本书真不错,评价非常高。全书分为四个部分,第一部分(1-3 章),主要就是普及 MySQL;第二部分(4-9 章)是全书的基础,介绍了 InnoDB、索引、B+树;第三部分(10-17 章)主要介绍了工作中常用到的查询优化,比如说单表查询是如何执行的,连接查询是如何执行的,以及如何查看 explain 语句的执行结果;第四部分(18-22 章)介绍了事务、redo 日志、MVCC、各种锁的细节。

《MySQL 是怎样运行的:从跟上理解 MySQL》这本书在掘金上也有小册open in new window,购买过的可以不用再购买纸质书了,内容差不多。

《MySQL技术内幕:InnoDB存储引擎》这本书详细介绍了 MySQL 的系统架构和各种各样的存储引擎,非常顶的一本书。强烈推荐2、4、5三章。

付费课程

极客上的《MySQL 实战 45 讲open in new window》评价挺高的,可以看看。一共分为两部分,基础篇(深入浅出地讲述了 MySQL 的核心知识、以及 MySQL 的基础架构、日志系统、事务隔离、锁等内容)和实践篇(结合一个个关键的数据库问题触发,分析数据库原理并给出实践指导)。

星球同学可以到星球的百度网盘里取,地址在《Java 程序员进阶之路》知识星球的置顶链接open in new window里。

学完以上这些,MySQL 的能力基本上会有质的飞跃,也就会有一种豁然开朗的感觉。当然,这部分学习起来十分吃力,主要是很多内容没有实际的应用场景。但最起码有个印象,万一用到了,再系统的翻翻书,看看网上的案例就会好很多。

有备无患嘛。

官方文档

英文能力比较强的球友,可以试读一下 MySQL 的官方文档open in new window

第三阶段:面试突击/实战运用

学习可以是功利性质的(当然也可以是因为纯粹的热爱),如果不是为了高薪,我们又何苦学这么多呢?

那既然学了 MySQL,就要检验学习成果,怎么检验呢?

准备面试的同学可以刷一波《面渣逆袭 MySQL 篇open in new window》,准备和面试官来回拉扯哈。

星球用户可以在星球的知识图谱open in new window里获取 PDF 版本。

准备升职加薪/跳槽的同学,那就一定要在实际的工作当中加以运用,不然很可能学完一段时间就忘记了。


最近整理了一份牛逼的学习资料,包括但不限于Java基础部分(JVM、Java集合框架、多线程),还囊括了 数据库、计算机网络、算法与数据结构、设计模式、框架类Spring、Netty、微服务(Dubbo,消息队列) 网关 等等等等……详情戳:可以说是2022年全网最全的学习和找工作的PDF资源了open in new window

关注二哥的原创公众号 沉默王二,回复111 即可免费领取。

Loading...