MySQL结构

MySQL属于关系型数据库管理系统(RDBMS),使用RDBMS时,最多见的系统结构就是客户端/服务器类型(C/S类型)这种结构。数据库

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

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

客户端就如同委托方,而服务器就像是受托方。因为二者关系相似受托方执行委托方发出的指令,故而得名。网络

就可使用 SQL 语句来实现关系数据库的读写操做了。本书为了给你们讲解 SQL,使用了能够显示如何将 SQL 语句发送到 RDBMS,以及接收返回信息(数据)的客户端。性能

另外,RDBMS 既能够和其客户端安装在同一台计算机上,也能够分别安装在不一样的计算机上。这样一来,不只能够经过网络使两者相互关联,还能够实现多个客户端访问同一个 RDBMS,以下图所示:学习

客户端没有必要使用一样的程序,只要能将 SQL 发送给 RDBMS,就能够操做数据库了。而且,多个客户端还能够同时对同一个数据库进行读写操做。编码

另外,RDBMS 除了须要同时接收多个客户端的请求以外,还须要操做存有大量数据的数据库,所以一般都会安装在比客户端性能更优越的计算机上。操做数据量特别巨大的数据库时,还能够将多台计算机组合使用。code

更详细的MySQL结构体以下所示:blog

表的结构

关系数据库经过相似 Excel 工做表那样的、由行和列组成的二维表来管理数据。用来管理数据的二维表在关系数据库中简称为排序

表存储在由 RDBMS 管理的数据库中,以下图所示。一个数据库中能够存储多个表。

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

另外,上图中只有一个数据库,咱们还能够建立多个数据库分别用于不一样用途。

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

RDBMS 术语

在咱们开始学习MySQL 数据库前,让咱们先了解下RDBMS的一些术语:

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