MySQL入门教程(1)

文章目录

  • 一. 数据库简介
    • 1.1 什么是数据库
    • 1.2 数据库的分类
  • 二. `MySQL`
    • 2.1 `MySQL`简介
    • 2.2 `MySQL`的客户端
    • 2.3 `MySQL`的服务器
    • 2.4 总结

一. 数据库简介

1.1 什么是数据库

数据库是一类软件, 帮助我们管理数据.

存储数据用文件就可以了,为什么还要弄个数据库?

文件保存数据有以下几个缺点:

  • 文件的安全性问题
  • 文件不利于数据查询和管理
  • 文件不利于存储海量数据
  • 文件在程序中控制不方便

数据库存储介质:

  • 磁盘

  • 内存

为了解决上述问题,专家们设计出更加利于管理数据的软件——数据库,它能更有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。

1.2 数据库的分类

数据库可以分为两大类:

  1. 关系型数据库

    是指采用了关系模型来组织数据的数据库, 关系模型指的就是二维表格模型.

    典型代表:

    • Oracle : 甲骨文产品,适合大型项目,适用于做复杂的业务逻辑,如ERPOA等企业信息系统。收费 . 要搭配IBM小型机才能发挥出最大作用 , 在银行使用比较广泛.
    • MySQL : 属于甲骨文,不适合做复杂的业务。开源免费.
    • SQL server : 微软的产品,安装部署在windows server上,适用于中大型项目。收费。
    • SQLite : 是一个零配置的数据库, 是非常小的, 是轻量级的. 一些嵌入式设备上会用到.
  2. 非关系型数据库

    是指基于键值对(Key-Value), 文档, 列族, 图形的形式来组织数据的数据库.

关系型数据库与非关系型数据库的 区别

关系型数据库 非关系型数据库
使用SQL 不强制要求,一般不基于SQL实现
事务支持 支持 不支持
复杂操作 支持 不支持
海量读写操作 效率低 效率高
基本结构 基于表和列,结构固定 灵活性比较高
使用场景 业务方面的OLTP系统 用于数据的缓存、或基于统计分析的OLAP系统

注:OLTP(On-Line Transaction Processing)是指联机事务处理,OLAP(On-Line Analytical Processing)是指联机分析处理。

二. MySQL

2.1 MySQL简介

当我们打开MySQL并输入密码后, 会显示这样的黑色窗口

MySQL入门教程(1)_第1张图片

这就代表登陆成功了, 而这个"黑框", 就是一个MySQL的客户端

MySQL是一个"客户端-服务器"结构的程序

什么叫做"客户端-服务器"呢? 举个例子

在食堂,

同学说, 来一份米粉.

阿姨说, 好嘞.

在上述场景中, 同学就是"客户端", 阿姨就是"服务器".

同学说的"来份米粉", 是客户端给服务器发的数据, 称为"请求(request)".

阿姨给同学的米粉, 是服务器返回客户端的数据, 称为"相应(response)"

客户端和服务器是两个程序, 通过网络进行通信 ; 主动发起请求的一方是客户端, 被动接受请求的一方是服务器.

MySQL入门教程(1)_第2张图片

但其实我们安装MySQL的时候 , 安装的就是客户端 + 服务器.

上述的黑色窗口就是客户端, 而服务器可以通过搜索’‘服务’'窗口看到

MySQL入门教程(1)_第3张图片

MySQL入门教程(1)_第4张图片

由于客户端和服务器是通过网络进行通信的, 所以这两个程序可以在同一台机器上, 也可以在不同机器上.

2.2 MySQL的客户端

MySQL的客户端有很多种, 上述的黑色窗口是MySQL自带的命令行客户端

除此之外, 还有很多第三方的图形化客户端 如navicat, workbench, idea 数据库插件/ datagrid

使用什么客户端其实并不重要, 它只是一个让用户和数据库服务器交互的窗口, 不管是用cmd还是图形化界面, 我们操作的都是SQL语句

2.3 MySQL的服务器

对于服务器来说, 它有以下特点:

  • 可以同时给多个客户端提供服务
  • 24小时连轴运行

正因如此, 服务器编程要比客户端更复杂一些, 对于稳定性, 效率, 都是有一定的要求.

服务器中存储了许多用户的数据, 就储存在服务器的"硬盘"上.

因为硬盘的存储空间大, 并且断电后数据不会丢失

2.4 总结

MySQL的作用就是管理数据

如何管理?

  • 先存储数据到MySQL服务器硬盘上

  • 再通过MySQL客户端来取数据使用

总之, MySQL是一个"客户端-服务器"结构的程序, 客户端和服务器之间使用网络进行通信

你可能感兴趣的:(mysql,数据库)