MySQL 实战 45 讲
林晓斌
网名丁奇,前腾讯云数据库负责人
224873 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已完结/共 49 讲
实践篇 (37讲)
特别放送 (1讲)
结课测试 (1讲)
MySQL 实战 45 讲
15
15
1.0x
00:00/00:00
登录|注册

直播回顾 | 林晓斌:我的 MySQL 心路历程

学数据库要保持什么心态?
怎么学习C、C++?
看源码需要什么技术?
习惯和提高SQL效率的方法
DBA有前途吗?
DBA和开发工程师有什么相同点?
推荐《高性能MySQL》
看MySQL的官方手册
实践
发现问题
首先要会用
看得懂源码让你有更多的方法
了解原理能让你更巧妙地解决问题
了解原理能帮你更好地定位问题
混社区分享经验
开始尝试看源码解决问题
以丰富的经历进入百度
DBA的修炼
MySQL学习路径
为什么要了解数据库原理?
我的经历
直播回顾 | 林晓斌:我的 MySQL 心路历程

该思维导图由 AI 生成,仅供参考

在专栏上线后的 11 月 21 日,我来到极客时间做了一场直播,主题就是“我的 MySQL 心路历程”。今天,我特意将这个直播的回顾文章,放在了专栏下面,希望你可以从我这些年和 MySQL 打交道的经历中,找到对你有所帮助的点。
这里,我先和你说一下,在这个直播中,我主要分享的内容:
我和 MySQL 打交道的经历;
你为什么要了解数据库原理;
我建议的 MySQL 学习路径;
DBA 的修炼之道。

我的经历

以丰富的经历进入百度

我是福州大学毕业的,据我了解,那时候我们学校的应届生很难直接进入百度,都要考到浙江大学读个研究生才行。没想到的是,我投递了简历后居然进了面试。
入职以后,我跑去问当时的面试官,为什么我的简历可以通过筛选?他们说:“因为你的简历厚啊”。我在读书的时候,确实做了很多项目,也实习过不少公司,所以简历里面的经历就显得很丰富了。
在面试的时候,有个让我印象很深刻的事儿。面试官问我说,你有这么多实习经历,有没有什么比较好玩儿的事?我想了想答道,跟你说个数据量很大的事儿 ,在跟移动做日志分析的时候我碰到了几千万行的数据。他听完以后就笑了。
后来,我进了百度才知道,几千万行那都是小数据。

开始尝试看源码解决问题

加入百度后,我是在贴吧做后端程序,比如权限系统等等。其实很简单,就是写一个 C 语言程序,响应客户端请求,然后返回结果。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

林晓斌在极客时间进行了一场直播,分享了他与MySQL打交道的经历和心得。他强调了解数据库原理的重要性,包括更好地定位问题、更巧妙地解决问题以及拥有更多方法。通过亲身经历,他阐述了了解数据库原理的益处,以及如何通过对源码的理解来优化操作行为。此外,他还分享了关于DBA的修炼、SQL效率提高方法以及学习C、C++的建议。文章内容生动有趣,展现了作者在技术领域的深厚造诣和丰富经验。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《MySQL 实战 45 讲》
新⼈⾸单¥68
立即购买
登录 后留言

全部留言(65)

  • 最新
  • 精选
  • liuq
    看了您的心路历程,我丧失了最后的一丝幻想,人与人的差距太大了,我意识到再怎么努力也达不到您刚毕业时的水平

    作者回复: 额… 怎么都不会晚的,我直到大一暑假才开始学写代码,进百度的时候旁边都是清北的同届毕业生,已经实习了一年半,我还从SVN学起,就是抓紧点时间就好了

    2019-01-08
    34
  • 杰之7
    通过这一节的阅读老师的心路历程,给我的第一个感受是老师敢做,很多人包括我自己都是有退缩心理的,但阅读老师的文章,老师是勇往的在向前走。 阅读到后面,越来越能感受到老师文章讲述的计算机基础学科的重要性,这其中就会锻炼人的耐心和技术水准,在老师开发数据库做源码分析时,我想又何止C和C++呢。必定会涉及到计算机操作内存,文件等内容,还有其他一些内容等。 对老师给的多写SQL,尽量少用界面软件,我也非常认同,也是我们熟悉Mysql的必经之路,可以让我们对数据底层的东西建立起我们的感觉,图形界面用多了会让我们失去这项能力。 不敢奢望最后能走多远,能有老师带着学习成长就值得。

    作者回复: 👍🤝

    2019-01-14
    22
  • Zzz
    林老师,关于贴吧系统权限脏页刷新的那个例子,有个疑问:既然“MySQL 里面就只有我那一个 select 全表扫描的请求“,为什么会有脏页呢?本来我想的是不是系统崩溃后MySQL在通过redo log恢复,但是恢复不是应该发在MySQL重启后,为select语句提供服务之前吗,它们应该已经刷新到磁盘了。那脏页是哪来的呢?

    作者回复: crash recovery 过程中产生的

    2019-01-22
    4
    16
  • 滔滔
    老师,想问一个关于加锁的问题,在mysql中有很多种锁,比如意向锁,行锁,gap锁,页面锁等等,往往一条复杂的sql语句的执行过程中要加很多的锁,通常情况下,是否存在一个锁申请的队列,并发的事务都向这个队列中提出自己想加的锁的申请,然后引擎根据队列中的顺序依次加锁,还是说加锁过程是原子的一次完成的呢?比如说一个update语句走全表扫描,在rr隔离级别下,会对每一条记录加x锁以及gap锁,这些锁是一次性加上的吗?

    作者回复: 不是一次性,你这个问题很好,在第21篇会讲到

    2018-12-18
    9
  • 姚伟
    老师说的了解数据库原理就是要去读懂MySQL的源代码吗?

    作者回复: 不一定要。 我见过很多经验丰富的数据库专家,他们对原理理解非常透彻,业务架构设计很有经验,也是很厉害的

    2018-12-18
    7
  • geraltlaush
    老师,我还想问下有没有教程和书教人从零开始实现一个数据库引擎,能够包含基本的数据库原理,我以后想从事分布式存储方面的工作,特别想能自己上手实现一个简易的引擎,但是能力不够,想找个教程

    作者回复: MySQL 的example引擎、federated引擎,第三方SphinxSE引擎都可以看看,比较简单

    2018-12-21
    3
  • 墨萧
    连接失败也不会重连,仍然用原来断掉的连接,所以就报错了。请问老师,怎么重连呢,我在连接url加上了&autoReconnect=true ,好像不起作用啊

    作者回复: 有些框架有bug,一般都会提供close然后再connect的方法给程序调用的吧?

    2018-12-19
    2
    2
  • janey
    为什么没有测试怎么学MySQL?业务是MySQL紧耦合的,所以买了这门课,学到这一讲,有一些反复看了几遍,当时觉得懂了,再回头觉得需要分析的时候又忘了……主要接触不到实际的业务,测试时除非客户反馈,太关注单个sql的性能的话对测试效率是不可接受的。边矛盾边学习……

    作者回复: 性能测试的时候如果碰到好多慢查询,会需要你去看原因吗?还是就是直接贴给开发就好了😆

    2019-03-02
    3
    1
  • paul.yang
    老师问个问题,为什么写数据库用c或者c++,是其他语言gc的问题吗?

    作者回复: 可能是年代问题吧,现在也有别的语言写的数据库呀,比如go

    2019-02-03
    1
  • ProgramGeek
    阅读丁奇老师的 MySQL 心路历程受益匪浅,那么2019 年第一个问题请教下丁奇老师,后续对 MySQL 2PC,3PC方面会做详细的讲解吗?在3PC场景中 MySQL 怎么保证数据的一致性?

    作者回复: 2PC已经有啦,你往后看哦😄

    2019-01-02
    1
收起评论
大纲
固定大纲
我的经历
以丰富的经历进入百度
开始尝试看源码解决问题
显示
设置
留言
65
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部