【MySQL教程】:从基础入门到高级实战(前言及概述)

    最近今年随着开源数据库的成熟,大型、中性、小型企业已经被广泛使用。广泛使用又会反过来初始其更加成熟。而开源数据库中的MySQL无疑是其中的佼佼者, 根据DB-Engines Ranking 2019年11月数据,MySQL作为目前最流行的开源数据库(没有之一),以其免费使用、配置简单、成熟稳定、性能优良等特性,占领了很大的市场。

    MySQL数据库最初由一小拨人开发,后来隶属于MySQL AB公司,2008年,MySQL AB公司被Sun公司以10亿美金收购,MySQL数据库进入Sun时代。2009年,Oracle公司以74亿美元收购Sun公司,自此MySQL数据库进入Oracle时代。 被Oracle收购后一段时间,大家对MySQL开源的未来前景充满了担心(这种担心也间接导致被更多人选用PostgreSQL数据库)。十年过去了,目前看,这种担心是多余的,MySQL这十年发展得很快,也被更广泛使用,也变得更加成熟。(个人感觉唯一不爽的是,下载安装介质需要Oracle登录账户。PS:Oracle登录账户是个小问题,可以搜索网上....)

【MySQL教程】:从基础入门到高级实战(前言及概述)

 

MySQL相关的文档资料也非常多。这些文档资料主要分为三类:

  • 官方文档。 官方文档特点是大而权威(尽管偶尔也有个别错误或与实际不一致)。但官方文档也有缺点:①内容太多,很多人没有耐心看完;②官方是从参考手册角度写的,不是从教材角度写的;③官方文档是english,很多同学虽然硬着头皮能看懂english,但心里就是不喜欢看。
  • 出版书籍。书籍的好处是系统全面,且有很多中文书籍。但作者水平参差不齐,而且有些书是前几年出版,针对的MySQL版本比较老。还有一个原因,书需要买了看了才知道好不好。花钱还可能买错。
  • 网上资料。MySQL各种资料非常丰富,对解决日常问题有很多帮助。但是网上资料存在:①低质量或错误的内容太多(估计很多人都有这种感觉,所谓的解决办法不能解决,反而错的更远);②不够系统,比较碎片化。 ③有些内容过时了,已经不是目前或者未来2~3年的主流版本。

对此,本文以多篇文章连载的形式作为教程。系统全面的讲解MySQL各个方面,内容从基础入门到高级实战,并加入了易犯错避坑的提示。主要包括三大篇章:

  • 基础篇。零起步,从安装开始,一步一步的熟悉、理解、运用MySQL基础操作、主要功能和特性。
  • 高级篇。从企业实际的角度,讲解实际生产环境中需要设计的部署、架构和功能。
  • 经验与技巧汇总。对一些有利于工作得小经验、小技巧或者避坑绕路的总结汇总。比较零散,便于备查。这部分也可以视为本教程的附录。

本教程从2019年底开始编写,主要特点:

  • 全部原创,内容来源权威。本教程全部手工打字,编排上借鉴了国内书籍和读者习惯,由浅入深。同时为了避免自己经验主义或理解误差。里面的具体知识点均对照官方的英文文档进行再次核实。
  • 把难点、易错点讲清楚讲透彻。对于难点、易错点重点讲清楚,用各种颜色提醒,希望读者第一次学习就能理解透。对大家一看就懂的内容,则着墨不多。IT所有技术都是人为涉及、人工创造的,所以一定都是易懂易理解的。但有时由于文档不全,或有文档讲解不清晰,导致学起来难度大增。等最后学会后,把难点、易错点搞清楚了,发现所谓的难度其实就一层窗户纸,轻轻捅破后也不过如此。
  • 以较新的主流版本做基础。以现在及未来2年内主流版本MySQL5.7为基础。虽然MySQL8正式版已经推出,但刚推出,还不一定成熟,配套的其他软件还没有同步更新。虽然小规模应用是可以的,但真正作为生产环境大规模使用估计还得2~3年后。因此选择MySQL5.7版本(小版本为最新的5.7.28)作为教程的主版本。同时,内容中也融入了MySQL8的内容(比如字符集设置),本教程期望目标是同时适用于MySQL5.7和MySQL8。
  • 全部命令均经过验证。为了提高准确性和可信度,文章中所有命令均经过验证(在MySQL5.7.28上),哪怕是最简单的命令也都在环境中执行了一遍。
  • 覆盖MySQL OCP的内容。本教程可作为MySQL OCP的备考教程。文章中覆盖了MySQL OCP 5.7的考试大纲和部分真题库(官方题库不断的更新且保密,只能覆盖部分真题)
  • 不展开讲解数据库基本原理、SQL基本语法。本文假定的读者熟悉常见SQL,最好也使用过其他数据库产品(简单使用过即可)。这部分为专门讲解,以突出MySQL的重点。

 

最后,希望大家多提意见。便于本教程不断修改完善。