> 文章列表 > mysql数据库引擎有哪几种

mysql数据库引擎有哪几种

mysql数据库引擎有哪几种

介绍mysql数据库引擎

在创建mysql数据库中,必须选择一个适合的引擎。数据库引擎指数据如何存储、访问和操作的规则和方式。mysql版中常见的引擎有MyISAM、InnoDB等。此文将介绍mysql数据库引擎从中获取知识。

MyISAM 引擎

MyISAM 是 MySQL 中应该使用最广泛的存储引擎之一。其最大的特色,就是性能非常出色,另外,MyISAM 提供了大量的特殊语句和特殊操作,而且每个表被存储在三个文件中,包括 .frm、.MYD 和 .MYI。

InnoDB 引擎

InnoDB 是 MySQL 的另外一种数据库引擎,一般来说,这种引擎更加适合处理大型数据库。支持事物处理。除了具备 MyISAM 所有的特性之外,InnoDB 还有诸多的其它特征,比如说支持外键、行锁定以及可在崩溃后自动恢复等等。InnoDB 存储引擎支持事务、行级锁和外键约束。如果需要支持事务和外键,应该选择InnoDB 引擎。

MEMORY 引擎

就像它的名字 memory 所暗示的一样,MEMORY 存储引擎基本上是完全建立于内存之上的。因此,由于它不需要磁盘 I/O,所以它的性能非常好。然而,尽管如此,它的存储一旦遭遇电压断电,就会永久性地消失。MEMORY 引擎的大多数项目都与表缓存、索引缓存以及锁缓存有关,使用它可以大大提高缓存查询的性能。

BLACKHOLE 引擎

BLACKHOLE 引擎不是把数据存放在特定的地方,它不存储记录。它不是一个存储引擎,它只是一个不存储任何数据但接收任何数据和代码的虚拟引擎。这个引擎管理的表会接收所有数据和代码,但不会存储或转发数据,这对于在分布式环境中进行数据流分析时非常有用。在使用 BLACKHOLE 引擎时,可以将某些表实例在 MASTER 服务器上存储,其余的则在所有的 SLAVE 中进行进行事件处理。

MERGE 引擎

MERGE 存储引擎是 MySQL 的一种特殊存储引擎,它可以实现多张 MyISAM 表组合成一张表的操作。其中,表之间的结构应该要完全相同,而且同样的,在使用这个引擎时,用户可以将数据存储到多个 MyISAM 表中,而不同的是,他可以用 MERGE 引擎对他们进行包装,然后以一个统一的名字来引用和操作它们。