为了账号安全,请及时绑定邮箱和手机立即绑定
编程百科手册

扫一扫 手机阅读

课程目录已更新27节
全部 试读

课程亮点

  • 实际案例帮助理解多种场景下 SQL 的优化技巧与原理
  • 精心绘制原理图辅助深入理解 B+ 树索引原理
  • 掌握在 MySQL 的锁机制下如何减少锁冲突、提高并发的相关技术
  • 具备高效事务系统的实现能力
  • 讲师的实际工作经验总结与干货分享
  • 每个小节搭配对应讨论题目,帮助深入理解学习成果

课程介绍

互联网刚开始进入国内时,使用比较多的都是昂贵的商业数据库。但在最近几年,一批开源数据库开始慢慢成为主流,其中最为突出的则是 MySQL。

根据 DB-Engines 七月份的最新统计(如下图,截图内容来源于:https://dbengines.com/en/ranking_osvsc ), MySQL 仍然是最受欢迎的开源数据库:
图片描述
MySQL 是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL 的 SQL “结构化查询语言”,是用于访问数据库的最常用标准化语言。MySQL 软件采用了 GPL(GNU 通用公共许可证),由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本,而选择 MySQL 作为其网站数据库。

综上所述,MySQL 的优势如下:

? MySQL 是开源的,无需支付额外费用;
? MySQL 使用标准的 SQL 数据语言形式;
? MySQL 可以运行于多个系统上,并且支持多种语言,包括 C、C++、Python、Java、Perl、PHP、Eiffel、Ruby 和 Tcl 等;
? MySQL 对 PHP 有很好的支持,PHP 是目前最流行的 Web 开发语言;
? MySQL 可以定制, 采用 GPL 协议,可修改源码来开发自己的 MySQL 系统。

从 MySQL 作为最流行的关系型数据库管理系统,以及在众多数据库中的明显优势来讲,可想而知,企业对 MySQL 的相关人才需求量是非常大的。那要怎么去学习 MySQL 呢?有很多人觉得学习 MySQL 只要学会怎么写 SQL 语句就行,这种观点其实是片面的。很多时候,等正式业务的数据量和 QPS 上来后,可能会由于部分低效率的 SQL 而拖慢整个数据库,也有可能由于事务设计不合理导致死锁,甚至可能有被 SQL 注入的风险等,所以表设计、SQL 优化、事务、锁等也必须要引起我们的重视。

本专栏的目的不仅是一起讨论如何高效、安全地使用 MySQL,更希望大家通过专栏内容的学习,成为能够对数据库或者 SQL 语句进行优化的综合型数据库使用者,进阶自己在数据库领域的相关技能。

讲师马听,一线 DBA (数据工程师)老兵。擅长 MySQL 优化, 技术公众号 《MySQL 数据库联盟》运营者。

本专栏分为 5 个模块,共 32 小节,课程结构与知识脉络如下:

图片描述
第一部分:SQL 优化

本部分介绍了 SQL 的常见优化方式,如 join、order by、group by、insert、count(*) 等。

第二部分:MySQL 索引

本部分主要对“某个字段加唯一索引还是普通索引?”,“某条查询某个条件字段有索引,为什么不走这个索引?”等相关问题给予解答,此外还介绍了索引的原理和联合索引的一些特性。

第三部分:MySQL 锁

本部分介绍了常见的锁场景。对于一个数据库来说,如何保证数据访问的一致性、有效性显得格外重要,因此使用者也应该去探究数据库的锁机制。

第四部分:事务

数据库正确执行的四个基本要素:

  • 原子性(Atomicity)
  • 一致性(Consistency)
  • 隔离性(Isolation)
  • 持久性(Durability)

本部分将进行详细描述 MySQL 是通过哪种机制去实现满足这四个数据库正确执行的基本要素。

第五部分:MySQL 的一些其它相关经验

本部分主要讨论讲师个人在使用 MySQL 的过程中曾讨论过的一些重要问题,如读写分离、查询缓存、分库分表等。

课程目录已更新27节
精选留言
  • 慕雪3119260

    不得不说,结尾处的四个生活实例可太形象了!!为老师点赞!!

    讲师回答 / 马听老师

    感谢同学支持,看来列举的这些例子达到预期效果了。

  • lixiaomuke

    很喜欢老师的这种专栏写作风格,重点突出,通俗易懂,与实际情况结合等等

    讲师回答 / 马听老师

    谢谢啦,感谢订阅和认可。

  • 决明子_0001

    收益丰富

更多精选留言

适合人群
  • 开发工程师
  • 运维工程师
  • MySQL DBA
  • 架构师
  • 其他 MySQL 爱好者
购买须知
  1. 本专栏为图文形式内容服务,共计 32 小节,上线时间为 2019 年 7 月 30 日,预计 2019 年 10 月 10 日更新完成;
  2. 本专栏更新时间为每周二、四更新 1 篇,形式为图文;
  3. 订阅成功后,用户即可通过慕课网 PC 端、App 端、WAP 端享有永久阅读的权限;
  4. 慕课专栏为虚拟内容服务,订阅成功后概不退款;
  5. 在专栏阅读过程中,如有任何问题,请邮件联系kf@imooc.com;
  6. 慕课专栏版权归本平台所有,任何机构、媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发布/发表,违者将依法追究责任。
造烛求明,读书求理
扫码关注慕课网服务号
干货分享
定期活动
课程优惠
专栏福利
官方优惠福利活动一手掌握,关注慕课网(ID:imooc-com),和30万+程序员一起成长!

本专栏知识点梳理

1.专栏阅读需要具备一定的MySQL基础语法知识,可参考:

2.在此专栏基础上,如果您想进阶学习MySQL源码分析相关知识,可参考:

下载慕课网APP

更好的体验,让阅读随处可得

扫描二维码,下载慕课网APP
意见反馈 邀请有奖 帮助中心 APP下载
官方微信