mysql 存储引擎简介


打个比方,avi,mp4作为两种视频格式, 占用系统的空间大小和清晰度也不一样。

同样的,数据库表的数据存储在数据库里及在上述的视频格式一样,也存在多种存储方式。

但是,对于用户和应用程序来说同样一张表的数据,无论用什么引擎来存储,用户看到的数据都是一样的。
不同的引擎存取,引擎功能,占用的空间大小,读取性能等可能有区别。

mysql最常用的存储引擎为:Myisam和Innodb。具体的体系结构如下:

mysql 5.5.5之前默认的存储引擎是Myisam. 在新版本的mysql中,InnoDB引擎由于其对事务的参照完整性,以及更高的并发性等优点逐渐取代MyISAM引擎。

每个MyISAM表都对应硬盘上的三个文件。这三个文件有相同的文件名,只是后缀不同。其中.frm保存数据表的定义,这个文件并不是MyISAM引擎的一部分,而是服务器的一部分。.MYD保存表的数据;.MYI是表的索引文件。.MYD和.MYI是MyISAM的关键点。

[root@localhost mysql]# file user.MYD
user.MYD: DBase 3 data file (167514111 records)
[root@localhost mysql]# file user.MYI
user.MYI: MySQL MISAM compressed data file Version 1
[root@localhost mysql]# file user.frm
user.frm: MySQL table definition file Version 9

 可以看到mysql系统表使用的引擎是MyISAM.

各个存储引起的比较如下:

参考:

mysql 5.1 中文手册

老男孩mysql讲解

猜你喜欢

转载自blog.csdn.net/eaglejiawo1120/article/details/83513382