作者 门牙没了
发布时间
更新时间 2020-11-25 15:58

课程亮点

  • 面向开发人员,紧扣程序开发方向
  • 聚焦面试场景,精选高频面试题目
  • 经典深度解答,原理/解决方案兼顾
  • 难点突破:事务和锁/监控指标/存储引擎…

课程简介

这些年,随着IT和互联网产业的逐渐成熟,对于开发者的技术要求越来越高,求职竞争也不断加剧。
当遇到晋升机会或者竞争高级岗位的offer时,如何在众多的竞争者中脱颖而出?深入学习数据库知识是一个非常好的方向。
MySQL作为一个发展完善的数据库系统, 是大多数开发工作中无法绕开的一个关键环节。不过,很多人对MySQL,也仅仅是学了CRUD,并没有深入了解,这可能导致:
①面试被问及高级数据库知识时,磕磕巴巴难以作答;
②日常工作中,遇到数据库层面的状况找不出原因所在。

在这个课程里,我结合自己多年来和程序员打交道的经历,梳理出了 一系列面向开发者的MySQL工作中常见问题和高频面试题目 ,并结合原理与操作层面进行了深度解析。这样,可以帮助你在获得面试技巧的同时,还可以学到实际工作中真正有用的MySQL知识技能,面对开发更游刃有余。
希望本课程能给你带来技巧与技能的双收获,助你斩获心仪offer,赢得高薪工作。

讲师简介

门牙没了,中国科学院大学(原中科院研究生院)硕士研究生,现任新加坡某大型互联网公司DBA资深专家,曾就职于新浪彩票带DBA团队。10年的关系型数据库开发与管理经验,擅长互联网行业MySQL数据库的性能调优与架构设计。曾创业从事MySQL相关技术培训,拥有丰富的讲师经验。目前仍活跃于国内数据库圈子,多次在数据库峰会发表文章及演讲。

专栏模块

本专栏以程序员的实际工作和面试场景作为出发点,重点解读工作和面试中和程序开发相关的MySQL技术:

  1. SQL与索引部分。重点讲解面试与实际开发中面临的一些高频问题,涵盖MySQL中的这些知识模块:数据类型、SQL语法、SQL优化、索引设计等。
  2. 事务和锁部分。本章节由一个转账的场景出发,剖析事务的本质,事务隔离级别的作用,以及InnoDB中的行锁与间隙锁的设计,和与行锁相关的死锁的解决方案。
  3. MySQL进阶部分。深入浅出地讲述程序员在面试与开发中遇到的MySQL核心知识,涵盖MySQL监控指标、MySQL存储引擎、分区表、故障诊断、元数据信息库等技能点。
  • 第1章 开篇词
    • 01 开篇词:程序员面试问到MySQL问题时如何才能不卡壳?
  • 第2章 SQL与索引面试题
    • 02 VARCHAR(50)中的50到底是能存50个字还是50个字节?
    • 03 为什么会有程序员使用INT(20)或INT(1)这样的设计,这样是否合理?
    • 04 如何在MySQL中存储货币?
    • 05 为什么大家都在开发规范中建议强制使用自增主键?
    • 06 如何优化超大的分页查询?
    • 07 DROP,DELETE与TRUNCATE分别在什么场景下使用?
    • 08 count(*)、count(1)、count(id)哪个性能更好?
    • 09 数据库索引应该如何设计?
    • 10 为什么我明明创建了索引,SQL却无法用到?
    • 11 如何判断一个SQL语句是否有性能问题?
    • 12 in-memory临时表和on-disk临时表有什么区别?
    • 13 SQL优化的一些思路(1):SQL维度优化
    • 14 SQL优化的一些思路(2):业务维度优化
  • 第3章 事务和锁面试题
    • 15 数据库为什么需要事务?
    • 16 开发人员必须要了解的InnoDB行锁
    • 17 遇到死锁要如何处理?
    • 18 脏读、幻读、不可重复读与MySQL事务隔离级别
  • 第4章 MySQL进阶面试题
    • 19 如何看懂MySQL的监控指标?
    • 20 深入浅出理解MySQL的存储引擎
    • 21 能不能使用分区表代替分库分表?
    • 22 如何快速诊断与MySQL相关的错误?
    • 23 如何正确使用MySQL元数据与统计信息库?
  • 第5章 结束语
    • 24 课程总结
  • 第6章 特别放送
    • 25 我的MySQL学习经历