前言:
关于如何入门MySQL,后台有好多同学咨询我,可能部分读者刚开始学习MySQL,我前面发的文章对部分同学来说暂时接触不到。原本写技术文章的目的是记录自己的工作学习,没有考虑到读者MySQL技术水平不一。本篇文章主要介绍MySQL技术的学习方法,刚入门的同学可以参考下。
MySQL相关介绍
想要学习MySQL数据库,我们首先要明白MySQL是什么,有什么作用,发展迭代历程。
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。
MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。
--源自百度百科
好用的开源软件都有分支,Linux如此,MySQL也不例外。MySQL现在有两个大的分支,MariaDB和Percona Server。Percona Server更多的关注加强性能,另外Percona公司发布的XtraBackup和pt-tookit好用到没朋友的,这些利器可以让DBA在管理MySQL时如虎添翼。
在MySQL AB公司被Sun收购之后,创始人发布了MariaDB,MariaDB更多的关注于新的功能。
关于学习MySQL,个人推荐使用MySQL5.7.17以上版本,安装教程可参考前面我的文章。
下面简单介绍下相关概念:
数据库(database): 指的是文件系统上的一组文件,在innoDB中表现为后缀为idb的文件。等同于schema。
实例(instance): 指的是操作系统上的一组进程/线程和内存的集合。如果在MySQL服务器上执行ps -ef | grep mysql,就能看见MySQL的进程了。
简单地说,数据库指的是文件,实例指的是进程/线程和内存。平时我们说的数据库,很多的时候指的是关系型数据库管理系统(RDBMS),这些概念在严谨的文档中是要严格区分的,但是在平时的交流中,基本上大家约定俗成的说法是没有问题的。
表(table): 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。
索引(index): 使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。
关于文档
当我们学习MySQL的过程中,难免会遇到某些困难,特别是某些参数该如何设置。这时候,官方文档是最好的工具。
5.7版本官方文档地址:
https://dev.mysql.com/doc/refman/5.7/en/
英文看不太明白关系也不大,谷歌翻译下网页,能读懂大概意思即可。个人认为,官方文档上的介绍比网上搜索的博客靠谱多了。
关于书籍
可能有些同学比较喜欢看专业书籍,对于想买书来学习MySQL的同学,这里推荐下大名鼎鼎的《高性能MySQL》,这本书堪称MySQL界的经典,没有之一的那种。
总结:
关于如何入门MySQL,总结下来就是:首先搭建好学习环境,了解MySQL相关架构及概念,然后再逐步进行练习。文档及书籍可以帮助你更系统的进行学习。希望这篇文章对你有所帮助,其他人有好的学习方法也可以留言分享哦!