第1章、MySQL概述
标签: MySQL是怎样使用的新版
存储数据方式演变
从古至今人们都有存储数据的需求,比方说记录账目开支、货物清单、人口统计等等等等,存储的方式也一直在变化。
人工管理阶段
很久很久以前,人们把数据存在动物骨头上,后来存到竹片上,再后来存到纸上,直到近代发明了磁带留声机啥的,不过这些都是依赖人工进行整理、保存和查询的,特点就是效率低下、错误率高、查找不方便等等等等。
文件系统阶段
后来人们发明了计算机,为了管理各种数据,人们发明了一种叫文件系统的东东,可以方便的通过文件的存储路径和文件名来访问各个文件的内容,计算机程序也可以直接通过文件系统来操作各种文件,比人工管理爽多了。
数据库阶段
随着文件中存储的内容越来越多,在文件中修改和查找某些数据已经变得非常困难了,所以人们发明了一种专门的软件来管理存储的数据,这些数据依照一定格式保存,通过这个软件可以方便的对数据进行增删改查操作,从而极大的提升了数据管理效率,人们就把这个管理数据的软件叫做数据库管理系统(英文:Database Management System
,简称:DBMS
)。
MySQL简介
关系型数据库管理系统
我们平时经常会用表格来存放信息,比如下边的两个表格就存放着学生的一些基本信息和他们的各种科目的考试成绩:
学生基本信息表
学号 | 姓名 | 性别 | 身份证号 | 学院 | 专业 | 入学时间 |
---|---|---|---|---|---|---|
20180101 | 杜子腾 | 男 | 158177199901044792 | 计算机学院 | 计算机科学与工程 | 2018-09-01 |
20180102 | 杜琦燕 | 女 | 151008199801178529 | 计算机学院 | 计算机科学与工程 | 2018-09-01 |
20180103 | 范统 | 男 | 17156319980116959X | 计算机学院 | 软件工程 | 2018-09-01 |
20180104 | 史珍香 | 女 | 141992199701078600 | 计算机学院 | 软件工程 | 2018-09-01 |
20180105 | 范剑 | 男 | 181048200008156368 | 航天学院 | 飞行器设计 | 2018-09-01 |
20180106 | 朱逸群 | 男 | 197995199801078445 | 航天学院 | 电子信息 | 2018-09-01 |
学生成绩表
学号 | 科目 | 成绩 |
---|---|---|
20180101 | 母猪的产后护理 | 78 |
20180101 | 论萨达姆的战争准备 | 88 |
20180102 | 母猪的产后护理 | 100 |
20180102 | 论萨达姆的战争准备 | 98 |
20180103 | 母猪的产后护理 | 59 |
20180103 | 论萨达姆的战争准备 | 61 |
20180104 | 母猪的产后护理 | 55 |
20180104 | 论萨达姆的战争准备 | 46 |
如果我们想查找史珍香的《母猪的产后护理》科目的考试成绩怎么办呢?我们可以先通过学生基本信息表
查找到她的学号,然后再通过她的学号到学生成绩表
里找到该学号对应的《母猪的产后护理》科目的成绩。
表格也简称为表,它是由行和列组成的。有一种类型的数据库管理系统就是通过表来存放数据的,而且不同的表可以通过某种关系联系起来(例子中学生成绩表通过学号和学生基本信息表联系起来),我们把这种数据库管理系统称为关系型数据库管理系统
,本书的主角儿MySQL
就是一种关系型数据库管理系统。
MySQL的优势
使用由行和列组成的表来存放数据的关系型数据库管理系统有好多种,比方说甲骨文的Oracle
,IBM
的DB2
,微软的SQL Server
,开源的PostgreSQL
和MySQL
等等等等。不过我们的主角儿是MySQL
,我们瞅瞅它有什么特点:
免费
就是不要钱,有很多数据库管理系统是要花真金白银买的,不过MySQL随便在网上下载就好喽~
开源
MySQL的代码都是公开的,方便了广大程序员了解它的实现原理。又因为是开源的,大家都喜欢看代码给它挑bug,设计MySQL的大叔们就很快把这些已知的bug修复好,所以MySQL还是比较稳定的。
小贴士: 我们可以从github上获取到MySQL的源代码,地址为:https://github.com/mysql/mysql-server
跨平台
MySQL可以运行在各种主流的操作系统上,比如各种Unix系统、Windows系统啥的~
很牛
它的性能还是比较好的,不然就没人用啦~
安装MySQL
说到底,MySQL
其实就是个软件,我们想使用它的话首先得把它装到自己的计算机上,下边我们以Windows
操作系统为例,来唠叨一下MySQL
的安装过程。
使用浏览器从下边的地址获得Windows上的
MySQL Installer
(可以理解为MySQL安装器或者MySQL安装程序):从图中可以看到,我们即将安装的
MySQL
版本为8.0.17
,如果我们想找更早的一些版本的话,可以点击Looking for previous GA versions
按钮:我们看到对于
MySQL 5.7.27
这个版本的MySQL Installer
来说,页面中提供了两个下载按钮,它们的意思分别是:第一个下载按钮对应的名称是:
mysql-installer-web-community-5.7.27.0.msi
,这个安装程序比较小,它仅仅包含安装程序和配置文件,并不包含MySQL
的主体内容,相当于这只是一个壳,在安装过程中需要连接互联网来下载相应的内容。mysql-installer-community-5.7.27.0.msi
:这个安装程序比较大,MySQL的主体内容已经被绑定到该安装程序中,安装过程中不再需要实时下载。
我们就选择下载这个已经绑定MySQL主体内容的`MySQL Installer`,点击`Download`按钮之后进入下边的页面:
![image_1dk2mmsn21k471leoskr8es6ju19.png-109kB](https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2019/9/7/16d0a77551cb8a3a~tplv-t2oaga2asx-zoom-in-crop-mark:3024:0:0:0.awebp)
页面提示我们注册或者登录,如果您不想注册或者登录的话,可以直接点击下边的`No thanks, just start my download`就可以直接将文件下载到自己的计算机上了。我将该文件保存到了`D`盘下边。
下载完成后,双击运行
MySQL Installer
。点击
运行
按钮,很抱歉弹出了一个错误框:原来是我的这台Windows电脑上缺少了一个称之为
.NET Framework 4.5.2
的东东,我们可以到www.microsoft.com/en-us/downl…将缺少的东西给安装上,然后进一步运行MySQL Installer
。小贴士: 如果你的Windows电脑上不弹出这个错误,那就没必要安装这个.NET Framework了。关于.NET Framework的安装过程我们就不详述了,非常简单~
然后继续运行
MySQL Installer
,就进入到了这个界面:我们勾选上边的
I accept the license terms
,表示同意上边列出的条款(如果你有兴趣可以看看这些条款都写了什么~),然后点击Next
按钮来选择安装类型:可以看到
MySQL Installer
支持多种安装类型,出于我们的学习目的,我们只需要选择Server only
就好了。小贴士: 我们平常所说的MySQL其实包括服务器程序和客户端程序,客户端程序又可以分为好多种类型。对于此处选择的Server only安装类型来说,在安装MySQL服务器程序的同时,也会将一些跟该服务器程序绑定的客户端程序安装到机器上。我们下一章详细的介绍服务器程序和客户端程序的区分,本章中就把MySQL和MySQL服务器程序当成一个东西对待就好了。
然后点击
Next
进入Check Reqirements
阶段:我们安装的软件可能依赖另外一些软件,当
MySQL Installer
检测到有一些依赖的软件没有在当前主机安装时,就会进入Check Requirements
阶段。从界面中我们可以看到MySQL Server 5.7.27
依赖的一个软件没有被安装到本机上,不过Status
列的值是空白的,这表明MySQL Installer
会自动帮助我们下载并安装这个依赖的软件(如果Status
列的值为Manual
则需要我们手动的去安装这些依赖的软件)。我们可以点击Execute
按钮来让MySQL Installer
自动下载并安装依赖的软件。等待下载完成出现了如下界面:我们勾选
I agree to the license terms and conditions
,点击Install
,等待一会儿出现了下边的界面表示依赖的软件被安装完成:然后继续返回
Check Requirements
阶段的界面,现在MySQL Server 5.7.27
的Status
列的值就变为了INSTL DONE
,我们就可以点击Next
按钮继续安装了:之后进入
Installation
阶段,点击Execute
按钮继续安装:等一会儿就安装完成了:
然后点击
Next
按钮,进入Product Configuration
阶段,在这个阶段可以对我们安装的MySQL Server 5.7.27
做一些基本的配置:继续点击
Next
按钮,进入详细的配置界面:这个称之为
High Availability
的界面是用来对MySQL进行高可用配置的,当然作为小白的我们并不知道啥是个高可用,保持默认选项点击Next
按钮就好了:然后进入了
Type and Networking
界面,我们仍然保持默认选项,点击Next
按钮进入下一步:在这个
Accounts And Roles
界面我们可以为Root
用户设置密码,Root
用户就是超级管理员,我设置的密码比较简单:123456
,大家可以自定义自己的密码哈~ 当然在这个界面中也允许我们再多添加几个用户,不过我们不准备添加了,直接点击Next
按钮进入下一步:这个
Windows Service
界面是用来将我们安装的MySQL
服务器程序设置为一个Windows服务
用的,可以在这个界面中设置该Windows服务的名称(界面中显示的Windows服务名默认就是MySQL57
,如果我们对服务名称不满意,可以自定义~),以及设置是否在开机时启动MySQL
服务器程序。小贴士: Windows服务是一个长时间运行在后台的程序,我们把MySQL服务器程序设置为一个Windows服务之后,就可以使用管理Windows服务的方式来操作它,稍后我们演示~
其他的部分我们就保持默认设置,继续点击
Next
按钮:进入了
Apply Configuration
界面,界面显示了一堆即将要做的工作,比方说生成配置文件、初始化数据库、启动MySQL
服务器等等,我们也不用关心,点击Execute
按钮就好了,完成之后便会出现下边的界面:我们点击
Finish
按钮返回到Product Configuration
阶段:从界面中可以看出来,现在已经完成了配置,继续点击
Next
按钮:到这里安装过程就结束了,点击
Finish
按钮退出安装程序。小贴士: 大家有没有观察到上述过程并没有让我们选择MySQL的安装路径呢?是的,MySQL Installer默认将MySQL安装到了C:\Program Files\MySQL\MySQL Server 5.7\这个路径下。如果我们想自定义安装路径的话,就得选择Custom安装类型,为了方便,我们就让它安装到C盘吧~ 当然,在Windows系统上使用MySQL Installer是设计MySQL的大叔推荐的一种比较简便的安装方式,当然我们还可以通过其他安装方式(比如直接下载zip包,或者直接编译源代码来安装)来将MySQL安装到Windows系统上,只不过稍微有点复杂,大家有兴趣的话可以到MySQL的文档中查看。
以服务的方式启动和关闭
MySQL
服务器。使用可视化界面管理Windows服务
我们上边在
Apply Configuration
阶段将MySQL
服务器程序设置成了一个名为MySQL57
的Windows服务
,我们可以打开Windows
的服务管理器来查看。首先点击开始
菜单,搜索名叫计算机管理
的程序:打开这个名叫
计算机管理
的程序,出现如下界面:再点击
服务和应用程序
下的服务
选项,进入Windows的服务管理器:可以看到里边就有一个名叫
MySQL57
的服务,它出于已启动
状态(这是在安装的Apply Configuration
阶段启动的)。如果我们想把它关掉,使用右键点击该条目,在弹出的菜单中点击停止
就好了:使用命令行解释器来管理Windows服务
不过作为程序员,老用可视化界面的效率太低了,我们还是偏向于使用命令行解释器来做相关操作。我们可以点击
开始
菜单,搜索名叫cmd
的程序(或者点击Windows键 + R键
后输入cmd):然后就进入了一个黑框框,这个黑框框就是所谓的
命令行解释器
:我们可以在这个黑框框中输入
net start MySQL57
来启动MySQL
服务器程序对应的Windows服务,或者使用net stop MySQL57
来停止MySQL
服务器程序对应的Windows服务,就像这样:
好了,到现在为止,我们已经掌握了如何MySQL
的安装、启动和停止方式,不过至今没有使用过它,下一章再见吧~