MySQL实战45讲 第一课总结&My SQL VS SQL Server

Posted dbLenis

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL实战45讲 第一课总结&My SQL VS SQL Server相关的知识,希望对你有一定的参考价值。

一周前,‘有关SQL’公众号的号主发起了第一期数据库华山论剑。作为有幸加入第一期的20个成员,我也借这个契机,在有压力的学习任务下,开始学习mysql实战45讲。作为一个半路转码出家的junior sql developer,工作之余还是发现有很多不足,也希望借这个机会,夯实基础,增加业务能力。

第一节课是基础架构:一条SQL查询语句是如何执行的?因为我现在的工作是sql developer,用的是sql server。之前也了解过Oracle DBA的知识,所以这节课的内容也不是第一次学习,但有些已经忘了,所以还是要反复重复这些最基本的。

因为在美国,所以想着如果一节课没有问题的话最起码可以把课件里的术语翻译成英文,也算给群友小伙伴们一个产出。

存储引擎层: Storage Engine Layer

连接器: connections Pool

查询缓存,也是就8.0版本被删除掉的功能:Query Cache

分析器:Parser

优化器:Optimizer

执行器:Executor

第一节课比较直接简单。网上查了查my sqlsmsql的区别:

  1. 1.      Mysql是开源的,支持所有平台,应该是它的优势所在,比较容易上手。Sql server偏企业级,可以和micorsoft其他产品联用,比如ssrsssis

  2. 2.       MySQL 中,查询一旦执行,就不能中途取消。在 SQL Server 中,查询可以在执行后中途取消。

  3. 3.       MySQL 中,有多个存储引擎,这使开发人员可以根据性能更灵活地使用引擎来存储表。InnoDB 是一种流行的存储引擎。SQL server 只能使用一个或只有一个存储引擎。

当然还有其他区别,就不展开讨论了。课后留了一个作业:select * from T where ID=10

T 中没有字段 k ,而你执行了这个语句 select * from T where k=1, 那肯定是会报 “不存在这个列 ”的错误: “Unknown column k in where clause’” 。你觉得这个错误是在我们上面提到的哪个阶段报出来的呢?

我觉得是在分析器阶段,分析器是分析做什么的阶段。之后才会去优化(怎么做)。分析器这一阶段是把sql语句parser成程序。

以上是关于MySQL实战45讲 第一课总结&My SQL VS SQL Server的主要内容,如果未能解决你的问题,请参考以下文章

《MySQL实战45讲》(20-35讲)学习总结

34岁Java程序员裸辞,mysql实战45讲丁奇资源

PHP & MySQL数据库专题 第一课 数据库介绍

PHP & MySQL数据库专题 第一课 数据库介绍

Go语言实战第一课

每日推荐MySQL实战45讲