mysql七种表格

MySQL 数据表七种类型 ,分别是:BDB、InnoBDB、HEAP、ISAM、MERGE、MYISAM、Gemeni

这七种又分为两类,

一类是”事务安全型”(transaction-safe),包括BDB和InnoDB;

其余都属于第二类,称为”非事务安全型”(non-transaction-safe)。

1、BDB全称是”Brekeley DB”,它是Mysql最早的具有事务能力的表的类型,由Sleepycat Software (http://www.sleepycat.com)开发。它提供了事务控制能力功能,它确保一组命令全部执行成功,或者当任何一个命令出现错误时所有 命令的结果都被回退,可以想像在电子银行中事务控制能力是非常重要的。支持COMMIT、ROLLBACK和其他事务特性。

最新版本的Mysql已经计划 移除对BDB的支持,转而全力发展InnoDB。

2、InnoDB是较新的事务安全型存储引擎,用于事务处理应用程序,支持BDB的几乎所有特性,并具有众多新特性,包括ACID事务支持。

InnoDB:

特性:

事务处理机制

支持外链

崩溃后能立即恢复

支持外键功能,级联删除

支持并发能力

在硬盘上的存储方式:InnoBDB frm

最新版本的Mysql已经计划移除对BDB的支持,转而全力发展InnoDB。InnoDB对Mysql有更好的特性支持,而且开发社区活跃。

3、MyISAM默认的MySQL插件式存储引擎,它是基于ISAM类型,但它增加了许多有用的扩展,它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。

注意,通过更改STORAGE_ENGINE配置变量,能够方便地更改MySQL服务器的默认存储引擎。

优点:

1)比ISAM表更小,所占资源更少

2)可以在不同平台间二进制移植表的类型在创建表时指定。

4、ISAM 

是MyISAM类型出现之前MySQL表使用的默认类型,现在已经被MyISAM代替

5、Memory (HEAP

是MySQL表中访问最快的表,将所有数据保存在RAM中,在需要快速查找引用和其他类似数据的环境下,可提供极快的访问。

注意,这种类型下数据是非持久化设计的,它一般适应于临时表,如果MySQL或者服务器崩溃,表中数据全部丢失

6、Merge

是一种值得关注的新式表,它是由一组MyISAM表组成,之所合并主要出于性能上考虑,因为它能够提高搜索速度,提高修复效率,节省磁盘空 间。

允许MySQL DBA或开发人员将一系列等同的MyISAM表以逻辑方式组合在一起,并作为1个对象引用它们。

对于诸如数据仓储等VLDB环境十分适合。有时它以 MRG_MYISAM 名称出现。

MERGE是一个有趣的新类型,在3.23.25之后出现。一个MERGE表实际上是又一个MyISAM表的集合,合并而成的一个表,主要是为了效率的考虑,因为这样不仅仅可以提高速度、搜索效率、修复效率而且还节省了磁盘空间。

7、Gemeni

Gemeni表,据听说也是在MySQL 4.0之后推出的,不过截至当前,很少有针对它的介绍,同样应用也就更少了,我们暂时不作介绍。

 

MySQL的数据表类型很多,其中比较重要的是MyISAM,InnoDB这两种。 
这两种类型各有优缺点,需要根据实际情况选择适合的,MySQL支持对不同的表设置不同的类型。下面做个简单的对比: 
MyISAM表类型是一种比较成熟稳定的表类型,但是MyISAM对一些功能不支持。

posted @ 2022-03-31 11:59  之鹿喵  阅读(654)  评论(0编辑  收藏  举报