MySQL 数据库原来隶属于 MySQL AB 公司,在 2008 年 1 月 16 日,被 SUN 收购。在 2009 年 SUN 公司被 Oracle 公司收购。随着 MySQL 数据库功能的不断完善,该数据库几乎支持所有操作系统,同时也增加了许多新特性,这些都是 MySQL 发展迅猛的原因。

很多初学者在数据库学习的时候,由于学习难度较大,往往不知所措,容易打击学习的自信心,没有了学习的兴趣,这些都是难以避免的。下面主要介绍作为初学者应该怎么学习 MySQL。

一、数据库的好处

可以持久化数据到本地
结构化查询
二、数据库的常见概念

DB:数据库,存储数据的容器
DBMS:数据库管理系统,又称为数据库软件或数据库产品,用于创建或管理DB
SQL:结构化查询语言,用于和数据库通信的语言,不是某个数据库软件特有的,而是几乎所有主流的数据库软件通用的语言
三、数据库存储数据的特点

数据存放到表中,表再放到库中
一个库可以由多张表,每张表具有唯一的表名用来标识自己
表中有一个或多个列,列又称为“字段”,相当于java中“属性”
表中每一行数据,相当于java中“对象”
四、常见的数据库管理系统
mysql,oracle,db2,sqlserver

二. MySQL
一、MySQL的背景
前身属于瑞典的一家公司,MySQL AB,08年被sun公司收购,09年被oracle收购

二、MySQL优点
1.开源,免费,成本低
2.性能高,移植性好
3.体积小,便于安装

三、MySQL的 安装
属于c/s架构的软件,一般来讲安装服务端

四、MySQL服务的启动和停止
方法一:通过命令行
net start 服务名
net stop 服务名
方法二:计算机管理----服务

五、MySQL服务的登录和退出

登录:mysql -h主机名 -P端口号 -u用户名 -p密码(默认端口3306,用户root)

退出:exit或ctrl+c

初学者学习 MySQL 必须掌握的知识点如下:

  • MySQL 的下载安装。熟悉 MySQL 的配置文件,目录结构。
  • MySQL 服务器的启动,登录与退出。
  • MySQL 常用命令及语法规范。
  • MySQL 数据类型与数据表的操作。例如,数据表的增删改查、单表查询、多表查询等。
  • MySQL 运算符和函数,例如,日期函数,时间函数,信息函数,聚合函数,加密函数,自定义函数等。
  • MySQL 存储过程,存储过程的调用。
  • MySQL 各个存储引擎的特点,如何选择合适的存储引擎等。
  • MySQL 事务的概念和使用等。
  • MySQL 权限管理和用户管理等。

如何高效的学习 MySQL
1)培养兴趣
兴趣是最好的老师,不论学习什么知识,兴趣都可以极大地提高学习效率,当然学习数据库也不例外。
2)及时学习新知识
正确、有效地利用学习资源,可以参考别人解决问题的思路和经验,即使获取掌握最新的知识。
3)多练习、多操作
数据库系统具有极强的操作性,所以要想熟练的掌握数据库,就必须经常上机练习。只有实际操作使用才能发现问题。通常情况下,数据库管理员工作的时间越长,其工作经验就越丰富。很多复杂的问题,都可以根据数据库管理员的经验来很好地解决。上机练习的过程中,可以将学到的数据库理论知识理解得更加透彻。
4)多编写SQL语句
SQL 语句是数据库的灵魂。数据库中的很多操作都是通过 SQL 语句来实现的。虽然现在的数据库都有易用的图形界面,可以直接在图形界面上创建数据库和表。但是,图形界面却掩盖了这些操作是如何实现的。只有经常使用 SQL 语句来操作数据库中的数据,才能更加深刻地理解数据库。
5)通过 Java 等编程语言来操作数据库
开发的软件系统中都需要使用数据库。软件开发者学习数据库的最终目的就是在软件开发中使用数据库。因此,在学习过程中,多思考一下如何使用 Java 等程序语言来操作数据库。最好多编一些程序来操作数据库。这样,既可以加深对数据库的理解,也可以提高自己的编程能力。
6)数据库理论知识不能丢
计算机领域的技术非常强调基础,刚开始学习可能还认识不到这一点,但是随着技术应用的深入,只有有着扎实的基础功底,才能在技术的道路上走得更快、更远。

数据库理论知识是学好数据库的基础,虽然理论知识会有点枯燥,但是这是学好数据库的前提。如果没有理论基础,学习的东西就不扎实。例如,数据库理论中会讲解 E-R 图、数据库设计原则等知识,如果不了解这些知识,就很难独立设计一个很好的数据库及表。可以将理论和实例结合在一起来学习,这样效率会更高。

学习数据库最好的方式是边学边练,本地安装一个mysql环境,从基本的安装配置开始学习,然后开始学习SQL,比如基本的增删改查、数据库的导入导出,然后是索引、存储过程、事务、触发器等高级内容。

当然了如果你英文不错,最好的学习教材就是官方文档了:

MySQL Documentation

官方文档中还给出了常见的SQL语句大全:

SQL Statements:https://dev.mysql.com/doc/refma

一、MySQL 入门

MySQL 入门,主要还是对 SQL 语法的学习。对于入门来说,我这里推荐两本书:《SQL 基础教程》、《SQL 必知必会》

这两本书的顺序呢,我建议是先《SQL 基础教程》

这本书介绍的节奏的更加平缓,并且用图示和关键字加粗更加生动地介绍知识,适合零基础的学生。

对于零基础的朋友来说 Mick 的《SQL 基础教程》更容易看懂学会,非常适合入门者学习。

·《SQL基础教程》

看完《SQL 基础教程》以后,可以快速的翻阅 《SQL 必知必会》,其实这就是个查漏补缺和复习巩固的作用。

·《SQL必知必会》

View Fullscreen

当然《SQL 必知必会》也可以不看,只是个可选项。

推荐这本书的原因呢,是《SQL 必知必会》有专门的练习平台供大家立马练习。

前期都不需要在自己的电脑上安装 MySQL,只需要在这个学习的过程中,以及学完知识之后的时间里,就在一些在线的刷题网站上使劲练习,大量的练。

在这个阶段的后期你可以尝试在电脑上安装 MySQL 了,当然软件的安装的过程中可能碰到很多玄学的事情。

二、MySQL 进阶

MySQL 进阶阶段,我们要开始了解它底层实现原理。

·《MySQL是怎样运行的》

这就和入门阶段不一样了,比较难且需要花的时间较多。

如果只是学完基础来看设计到底层实现的大部头,估计也会直接劝退了。

这里可以先看这本《MySQL 是怎样运行的》,作者采用诙谐幽默的表达方式,对MySQL的底层运行原理进行了介绍,针对实际的工作和面试中遇到的概念和原理进行讲解,多种图解,让你快速了解mysql的各种实现原理。

·《深入浅出 MySQL》

前面的部分的“基础篇”可以快速略过,重点的就是后面的“开发篇和优化篇”。

尤其是后面的“优化篇”对我帮助很大,学习了一些常见的 MySQL 优化方式。

毕竟数据库性能优化是对我们来说很重要的一趴。

·《MySQL 技术内幕:InnoDB存储引擎》

MySQL 中用的做多的就是 InnoDB 引擎,所以更进一步学习 InnoDB 存储引擎很有必要。

这本书反正就是 MySQL 中的经典书,解析了 InnoDB 的体系结构、实现原理、工作机制,里面呆了大量的实践内容。

·《高性能 MySQL》

MySQL 不老的经典大部头,这个大家就放在最后看好了。

这本书好的方面是,每一章都是相对独立的主题,大家可以根据目录选择性的阅读。

我记得当时我主要就是看了创建高性能的索引、查询性能优化这几个章节,不得不说:Nice!