欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

MySQL结构

程序员文章站 2022-07-01 22:43:28
MySQL 属于 关系型数据库管理系统 (RDBMS),使用RDBMS时,最常见的系统结构就是 客户端/服务器类型 (C/S类型)这种结构。 指的是用来接收其他程序发出的请求,并对该请求进行相应处理的程序(软件),或者是安装了此类程序的设备(计算机)。在计算机上持续执行处理,并等待接收下一条请求。 ......

mysql属于关系型数据库管理系统(rdbms),使用rdbms时,最常见的系统结构就是客户端/服务器类型(c/s类型)这种结构。

MySQL结构

服务器指的是用来接收其他程序发出的请求,并对该请求进行相应处理的程序(软件),或者是安装了此类程序的设备(计算机)。在计算机上持续执行处理,并等待接收下一条请求。rdbms 也是一种服务器,它能够从保存在硬盘上的数据库中读取数据并返回,还可以把数据变更为指定内容。

与之相对,向服务器发出请求的程序(软件),或者是安装了该程序的设备(计算机)称为客户端。访问由 rdbms 管理的数据库,进行数据读写的程序称为 rdbms 客户端。rdbms 客户端将想要获取什么样的数据,或者想对哪些数据进行何种变更等信息通过 sql 语句发送给rdbms 服务器。rdbms 根据该语句的内容返回所请求的数据,或者对存储在数据库中的数据进行更新。

客户端就如同委托方,而服务器就像是受托方。由于两者关系类似受托方执行委托方发出的指令,故而得名。

就可以使用 sql 语句来实现关系数据库的读写操作了。本书为了给大家讲解 sql,使用了可以显示如何将 sql 语句发送到 rdbms,以及接收返回信息(数据)的客户端。

另外,rdbms 既可以和其客户端安装在同一台计算机上,也可以分别安装在不同的计算机上。这样一来,不仅可以通过网络使二者相互关联,还可以实现多个客户端访问同一个 rdbms,如下图所示:

MySQL结构

客户端没有必要使用同样的程序,只要能将 sql 发送给 rdbms,就可以操作数据库了。并且,多个客户端还可以同时对同一个数据库进行读写操作。

另外,rdbms 除了需要同时接收多个客户端的请求之外,还需要操作存有大量数据的数据库,因此通常都会安装在比客户端性能更优越的计算机上。操作数据量特别巨大的数据库时,还可以将多台计算机组合使用。

更详细的mysql结构体如下所示:

MySQL结构

表的结构

关系数据库通过类似 excel 工作表那样的、由行和列组成的二维表来管理数据。用来管理数据的二维表在关系数据库中简称为

表存储在由 rdbms 管理的数据库中,如下图所示。一个数据库中可以存储多个表。

MySQL结构

根据 sql 语句的内容返回的数据同样必须是二维表的形式,这也是关系数据库的特征之一。返回结果如果不是二维表的 sql 语句则无法执行。

另外,上图中只有一个数据库,我们还可以创建多个数据库分别用于不同用途。

MySQL结构

表的列(垂直方向)称为字段,它代表了保存在表中的数据项目。与之相对,表的行(水平方向)称为记录,它相当于一条数据。关系数据库必须以行为单位进行数据读写 ,请大家牢记。

rdbms 术语

在我们开始学习mysql 数据库前,让我们先了解下rdbms的一些术语:

  • 数据库: 数据库是一些关联表的集合。
  • 数据表: 表是数据的矩阵。在一个数据库中的表看起来像一个简单的电子表格。
  • 列: 一列(数据元素) 包含了相同的数据, 例如邮政编码的数据。
  • 行:一行(=元组,或记录)是一组相关的数据,例如一条用户订阅的数据。
  • 冗余:存储两倍数据,冗余降低了性能,但提高了数据的安全性。
  • 主键:主键是唯一的。一个数据表中只能包含一个主键。你可以使用主键来查询数据。
  • 外键:外键用于关联两个表。
  • 复合键:复合键(组合键)将多个列作为一个索引键,一般用于复合索引。
  • 索引:使用索引可快速访问数据库表中的特定信息。索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。
  • 参照完整性: 参照的完整性要求关系中不允许引用不存在的实体。与实体完整性是关系模型必须满足的完整性约束条件,目的是保证数据的一致性。