😘 MySQL-02-MySQL数据库简介

😘 MySQL-02-MySQL数据库简介

mysql-logo

1 开篇介绍

👋 Hello 大家好,我是 NagaseMySQL 从删库到跑路 ,又到了学习 MySQL 的时刻,接下来就让我们感受一下 MySQL 独特的魅力吧。

随着时间的推移,开源数据库在中低端应用中逐渐流行起来,占据了很大的市场份额。开源数据库具有免费使用、配置简单、稳定性好、性能优良等特点,而 MySQL 数据库正是开源数据库中的杰出代表。

在该篇博客中,我们主要介绍 MySQL 相关的内容。祝你学的开心 🥳

2 MySQL 简介

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

oracle-logo-red

除此之外, MySQL 是最流行的数据库之一,是一个免费开源的关系型数据库,但是这并不意味着该数据库是完全免费的。MySQL 适合中小型软件,被个人用户以及中小企业青睐。

针对不同的用户,MySQL 分为两个版本:

  1. MySQL Community Server(社区版):该版本是自由下载且完全免费的,但是官方不提供技术支持。
  2. MySQL Enterprise Server(企业版):该版本是收费的,而且不能下载,但是该版本拥有完善的技术支持(官方提供电话技术支持)。

3 为什么选择 MySQL

MySQL 数据库管理系统具有很多的优势,如下所述:

  • 开放源代码

MySQL 是开放源代码的数据库,任何人都可以获取该数据库的源代码。这就使得任何人都可以修正 MySQL 的缺陷,并且任何人都能以任何目的来使用该数据库。MySQL 是一款可以自由使用的数据库。

  • 跨平台性

MySQL 不仅可以在 Windows 系列的操作系统上运行,还可以在 UNIX、Linux 和 macOS 等操作系统上运行。因为很多网站都选择 UNIX、Linux 作为网站的服务器,所以 MySQL 的跨平台性保证了其在 Web 应用方面的优势。虽然微软公司的 SQL Server 数据库是一款很优秀的商业数据库,但是其只能在 Windows 系列的操作系统上运行。因此,MySQL 数据库的跨平台性是一个很大的优势。

  • 价格优势

MySQL 数据库是一个自由软件,任何人都可以从 MySQL 的官方网站上下载该软件,这些社区版本的 MySQL 都是免费试用的,即使是需要付费的附加功能,其价格也是很便宜的。相对于 Oracle、DB2 和 SQL Server 这些价格昂贵的商业软件,MySQL 具有绝对的价格优势。

  • 功能强大且使用方便

MySQL 是一个真正的多用户、 多线程 SQL 数据库。它能够快速、有效和安全的处理大量的数据。相对于 Oracle 等数据库来说,MySQL 的使用是非常简单的。MySQL 主要目标是快速、健壮和易用。

MySQL 与常用的主流数据库 Oracle、SQL Server 相比,主要特点就是免费,并且在任何平台上都能使用,占用的空间相对较小。但是,MySQL 也有一些不足,比如对于大型项目来说,MySQL 的容量和安全性就略逊于 Oracle 数据库。

4 MySQL 的应用场景

MySQL 是目前世界上最流行的开源关系型数据库,大多应用于互联网行业。比如,在国内,大家所熟知的百度、腾讯、淘宝、京东、网易、新浪等,国外的 Google、Facebook、Twitter、GitHub 等都在使用 MySQL 。社交、电商、游戏的核心存储往往也是 MySQL 。

任何产品都不可能是万能的,也不可能适用于所有的应用场景。那么 MySQL 到底适用于哪些场景呢?

  1. Web 网站系统

Web 网站开发者是 MySQL 最大的客户群,也是 MySQL 发展史上最为重要的支撑力量。

MySQL 之所以能成为 Web 网站开发者们最青睐的数据库管理系统,是因为 MySQL 数据库的安装配置都非常简单,使用过程中的维护也不像很多大型商业数据库管理系统那么复杂,而且性能出色。还有一个非常重要的原因就是 MySQL 是开放源代码的,完全可以免费使用。

  1. 日志记录系统

MySQL 数据库的插入和查询性能都非常的高效,如果设计的好,在使用 MyISAM 存储引擎的时候,两者可以做到互不锁定,达到很高的并发性能。所以,对需要大量的插入和查询日志记录的系统来说,MySQL 是非常不错的选择。比如处理用户的登录日志,操作日志等,都是非常适合的应用场景。

  1. 数据仓库系统

随着现在数据仓库数据量的飞速增长,我们需要的存储空间越来越大。数据量的不断增长,使数据的统计分析变得越来越低效,也越来越困难。下面是几个主要的解决思路。

  • 采用昂贵的高性能主机以提高计算性能,用高端存储设备提高 I/O 性能,效果理想,但是成本非常高;
  • 通过将数据复制到多台使用大容量硬盘的廉价 PC Server 上,以提高整体计算性能和 I/O 能力,效果尚可,存储空间有一定限制,成本低廉;
  • 通过将数据水平拆分,使用多台廉价的 PC Server 和本地磁盘来存放数据,每台机器上面都只有所有数据的一部分,解决了数据量的问题,所有 PC Server 一起并行计算,也解决了计算能力问题,通过中间代理程序调配各台机器的运算任务,既可以解决计算性能问题又可以解决 I/O 性能问题,成本也很低廉。

在上面的三个方案中,第二和第三个的实现,MySQL 都有较大的优势。通过 MySQL 的简单复制功能,可以很好的将数据从一台主机复制到另外一台 ,不仅仅在局域网内可以复制,在广域网同样可以。

当然,很多人可能会说,其他的数据库同样也可以做到,不是只有 MySQL 有这样的功能。确实,很多数据库同样能做到,但是 MySQL 是免费的,其他数据库大多都是按照主机数量或者 CPU 数量来收费,当我们使用大量的 PC Server 的时候,授权费用相当惊人。所以第一个方案,基本上所有数据库系统都能够实现,但是其高昂的成本不是每一个公司都能够承担的。

  1. 嵌入式系统

嵌入式环境对软件系统最大的限制是硬件资源非常有限,在嵌入式环境下运行的软件系统,必须是轻量级低消耗的软件。

MySQL 在资源的使用方面的伸缩性非常大,可以在资源非常充裕的环境下运行,也可以在资源非常少的环境下正常运行。它对于嵌入式环境来说,是一种非常合适的数据库系统,而且 MySQL 有专门针对于嵌入式环境的版本。

并且,MySQL 的定位是通用数据库,各种类型的应用一般都能利用到 MySQL 存取数据的优势。业内生产实践证明,MySQL 更适合中小型企业。以目前的软硬件产品水平来看,如果数据超过几个 TB 将难以高效利用 MySQL。

MySQL 可以作为传统的关系型数据库产品使用,也可以当作一个 Key-Value 产品来使用。由于它具有优秀的灾难恢复功能,因此相对于目前市场上的一些 Key-Value 产品会更有优势。

5 专业术语介绍

5.1 库

什么是 呢?其实 就是 文件夹

image-20210129012646146

5.2 表

就是 文件夹 内的 文件

image-20210129012906915

5.3 记录

记录 就是文件中的一行行的 数据

image-20210129013057526

5.4 字段

表格 的第一行是 表头 ,我们称之为 字段 。除了第一行 表头,剩下的我们称之为 表单

image-20210129013424671

6 MySQL 架构

MySQL 采用客户端 — 服务器(Client/Server)架构,简称 C/S ,是一种网络架构,通常在该网络架构下的软件分为 客户端服务端

服务器是整个应用系统资源的存储和管理中心,多个客户端分别各自处理相应的功能,共同实现完整的应用。在 C/S 结构中,客户端用户的请求被传送到数据库服务器,数据库服务器进行处理后,将结果返回给用户。

注意⚠️:客户端和服务端可以安装在不同计算机或相同计算机上,不管它们在不在相同的计算机上,客户端都要与服务端进行通信。

那么直白的讲,MySQL 就是一款基于网络的套接字应用程序。客户端可以是:

  • MySQL 提供的工具(如 MySQL Workbench)
  • Web 应用开发语言(如 ASP、JSP 和 PHP)客户端
  • 程序设计语言(如 C、C++、Java、Python)客户端
posted @ 2021-03-12 22:29  码动世界  阅读(275)  评论(0编辑  收藏  举报