目录
- 1. MySQL是什么?
- 2. 什么是客户端,什么是服务器?
- 3. 服务器的特点
- 4. 安装mysql
- 5. mysql 客户端
- 6. mysql 服务器
- 7. mysql的本体
- 8. MySQL 使用什么来存储数据?
- 9. 数据库的多种含义
- 10. MySQL 存储数据的组织方式
1. MySQL是什么?
MySQL 是一个 客户端 - 服务器 结构的程序
之前我们写的代码,最终都是编译成一个程序
未来接触到的程序中,经常都是为了实现某个功能,需要多个程序
MySQL中的客户端是一个程序,服务器是一个程序,这两个程序相互配合
客户端-服务器 结构也称为 C/S 结构
2. 什么是客户端,什么是服务器?
举个例子:
我去楼下餐馆吃饭
我进入餐馆了,说:老板,来个蛋炒饭~~
老板说,好嘞,您稍等
不一会儿吧炒饭就端上了~~
这个例子中的我就是客户端,餐馆就是服务器
对于客户端和服务器还有明确的定义:
主动发起通信的一方,称为 客户端
被动接受通信的一方,称为 服务器
客户端给服务器发送的数据,称为 请求 (Request)
服务器给客户端返回的数据,称为 响应(Response)
客户端程序和服务器之间,数据交互的方式,最主要就是通过 网络
客户端程序一般就是我们普通用户用的程序
服务器是藏在遥远的公司的机房里中,没法直接感触到~~
例如:点外卖能够看到单家列表,商品列表,全靠服务器返回数据,
打车,能够给你匹配到一个快车司机,也是靠服务器
玩一局吃鸡,也需要服务器来协调所有玩家…
3. 服务器的特点
- 被动的一方
- 一个服务器一般来说要同时给多个客户端提供服务
- 服务器一般都会7*24小时运行 (服务器不知道客户端啥时候发请求过来,只能严阵以待),但也有特殊情况,比如12306的服务器
4. 安装mysql
mysql 软件免费安装包: 百度网盘
提取码: gypm
安装视频教程链接:mysql安装视频
安装好之后,就是安装了 mysql 客户端和服务器(客户端和服务器都在你同一个电脑上)
客户端通过 网络 与服务器通信,所以客户端和服务器可以在同一个主机上,也可以在不同主机上
工作中通常是不同主机,在学习阶段,一般就是一个主机了
下图是测试mysql的安装是否成功:
5. mysql 客户端
点击任意一个客户端,就会出现一个黑框框,这个黑框框就是 mysql 原生 (人家默认提供的客户端)命令行的客户端
这个密码就是你安装的时候设置的密码,如果密码输入错误,客户端窗口会直接闪退(尤其是 numlock 和 fn 键可能会影响你的密码)
客户端输入密码才能连上服务器,如果密码忘了,比较简单粗暴的方法就是重装了
只要 mysql 客户端能连上服务器就 OK
6. mysql 服务器
怎么找到mysql的服务器呢?在桌面的开始搜索服务,
服务器程序一般是不带界面的,对于 windows 来说,往往可以在 ‘服务‘ 窗口中看到 (也有其他的体现形式)
学会使用 MySQL 5.7 不影响使用 MySQL 8.0
使用 5.7 也是因为,很多企业的数据库并非是最新版本 (新也可能不稳定)
7. mysql的本体
MySQL的服务器部分是本体
MySQL使用的服务器部分用来存储和管理数据,负责增删查改的核心部分
而 mysql 客户端,只是一个和用户交互的界面,只是让用户能够通过客户端,给服务器 发送指令,指挥服务器要干啥
真正干活的是数据库服务器
8. MySQL 使用什么来存储数据?
MySQL 使用硬盘来存储数据
9. 数据库的多种含义
数据库可能指的是:
- mysql 这一种软件
- 数据库这一门学科
- 安装 mysql 服务器的主机
- 逻辑上的数据集合
10. MySQL 存储数据的组织方式
- 数据库 (database,注意一个词可能会有多种含义,需要结合上下文来理解,比如:如果面试官问你,让你解释下什么叫做堆,什么叫做栈,此时你要反问面试官,你说的是哪个堆,哪个栈,是数据结构中的堆和栈,还是操作系统中堆和栈的概念,还是 JVM 中的堆和栈?)
此处数据库的意思是 逻辑上的数据集合,一个mysql服务器上可以有多个这样的 数据集合 。 实际开发中,会把一些有关的数据,放到一起,就构成了数据集合。举个例子:- 教务系统 (同学信息,作业信息,出勤信息…)
- 招聘系统 (公司信息,招聘信息…)
- 论坛(同学们发的一些帖子…)
假设这些数据都是在同一个mysql服务器上存储的,但是为了让他们在逻辑上区分开,于是就使用不同的 数据库 来区分(此处 数据库 就是逻辑上的数据集合)
- 数据表 (table), 在一个数据库中,还能存储不同的数据,每组数据都使用数据表来存储,数据表相当于表格,类似于excel,一个数据表里有很多行 (row),每一行,都是一条记录/数据,每一行又包含很多 列,每一列也称为一个 字段(field)