首页 > 网络运维 > Linux/Mysql > 正文

mysql文件结构

mysql文件结构

MySQL文件结构指的是MySQL存储的文件以及文件内容的结构。MySQL使用文件来保存数据,文件包括数据库文件,表文件,日志文件等,以及这些文件的结构。MySQL文件结构分为3个层次:物理层,逻辑层和应用程序层。

一、物理层

物理层是指MySQL存储数据和日志所采用的数据库文件和表文件,也可以把它们称之为存储层。MySQL采用文件系统来存储数据和日志,文件系统由多个文件组成,每个文件都有自己的格式和用途。MySQL使用固定结构文件来存储数据,这种文件包括MySQL数据库文件(.frm),数据文件(.myd和.myi),日志文件(.log,.err, .sdi),以及文件索引结构(.ibd, .isi)等。

1.1 MySQL数据库文件 (.frm)

MySQL数据库文件是每个数据库均包含的文件,它保存MySQL服务器所有可用数据库中表、视图和存储过程的定义信息。这些文件对外部用户不可见,只有MySQL服务器才会加载FRM文件,并且其他的数据库引擎也只有加载FRM文件可以创建表结构。

1.2 数据文件 (.myd和.myi)

MySQL数据文件由两个块组成,分别是.myd和.myi文件,它们被称为MYISAM表的表文件。.myd文件保存数据和索引,而.myi文件保存索引。

1.3 日志文件

MySQL日志文件包括事务日志(.log),错误日志(.err),以及数据表空闲空间信息文件(.sdi)。事务日志文件保存所有由MySQL服务器改变的信息;错误日志文件保存MySQL服务器发生的错误的记录;数据表空间信息文件保存数据表的索引结构和空闲空间信息。

1.4 索引文件

MySQL索引文件是指ISAM和MyISAM表中存储索引结构的文件,它同时也有多种类型,如.ibd,.isi等。这些文件被用于记录数据表索引信息,索引文件名称和表名相同。

二、逻辑层

MySQL逻辑层包括数据库,表,列,视图,函数,存储过程等数据对象,也就是在用户角度对数据进行建模时的结构。

2.1 数据库

数据库是指用户可以操作的最小存储单位,它起到一个集合的作用。MySQL中,用户需要先创建数据库,然后才可以创建表、视图、函数和存储过程等数据库中的对象。

2.2 表

表是MySQL中最基本的数据存储对象,它可以用来存储关联数据(也叫做行和列数据)。MySQL所有的数据都必须存放在表中,每个表都有一个唯一的名称,此外,表中的数据还需要按照一定的结构来存储。

2.3 列

列是数据表中的一个字段,它是一个标识符,用于描述表中一条记录的特定数据元素。一个表可以有多个列,每个列对应一个不同的数据类型,可以分布在多个表中。

2.4 视图

视图允许用户以虚拟表的方式将多个表中的数据字段组合起来,从而产生一张视图表,它可以屏蔽底层表和数据库引擎中存储的格式,从而让用户独立地操作数据。

2.5 函数

函数是一段程序,可以接受不定个数的参数,它可以对参数执行一些运算,数据的操作和查询,从而得到一个结果值作为函数的输出。MySQL提供了一系列内置函数,用于实现表达式的计算,以及数据的处理和查询。

2.6 存储过程

存储过程是由一组MySQL指令组成的一段程序,以及一组变量,它可以在某一次会话中被多次调用。

MySQL存储过程不仅可以提高数据库访问性能,还能够减少用户输入的复杂性。

三、应用程序层

应用程序层是指应用程序如何访问MySQL,包括如何使用客户端应用程序以及如何使用SQL语句。MySQL使用抽象的应用程序接口(API)来让客户端访问数据库,API接口由MySQL提供,在服务器端由MySQL实现SQL语句的翻译和查询,在客户端由应用程序实现服务器端返回的数据的处理。

综上所述,MySQL文件结构具有三层次:物理层,逻辑层和应用程序层。物理层中包括MySQL数据库文件(.frm),数据文件(.myd和.myi),日

打赏
海报

本文转载自互联网,旨在分享有价值的内容,文章如有侵权请联系删除,部分文章如未署名作者来源请联系我们及时备注,感谢您的支持。

转载请注明本文地址:http://atpbike.com/article/mysql/2768.html

相关推荐

支付宝
微信
赞助本站