MySQL的存储引擎


MYSQL的共有7种存储引擎。每一种引擎都是完全不同的, 都是为了满足特定应用的需要。
你可已选择最适合的引擎而不是向oracle里头只有一种通用的存储引擎。

 

MySQL Storage Engines Overview(MySQL 存储引擎简介)

MyISAM: 默认的存储引擎, 不支持事务机制,数据可靠性中等, 表级锁。在读操作占多数的应用中有很好的性能,大部分web和数据库存服务都用了MyISAM.  MyISAM强调了快速读取操作, 它在设计之时就考虑到数据库被查询的次数要远大于更新的次数。因此,ISAM执行读取操作的速度很快,而且不占用大量的内存和存储资源

HEAP:  数据都在内存中, 读取速度很快, 然而它所管理的数据是不稳定的, 一旦宕机则所有数据丢失,很适合于小规模的临时表。HEAP表格在你需要使用SELECT表达式来选择和操控数据的时候非常有用。要记住,在用完表格之后就删除表格。让我再重复一遍:在你用完表格之后,不要忘记删除表格。

Archive: 用于存储无索引的大量数据

Merge: 允许你把许多结构相同的表合并为一个表。然后,你可以执行查询,从多个表返回的结果就像从一个表返回的结果一样。每一个合并的表必须有同样的表定义。
你只能合并MyISAM表而且必须严格遵守相同的表定义的限制。

InnoDB: 支持事务机制, 由于有行级锁适合于写操作很多的应用, 有很好的数据恢复功能和可靠性。

NDB: 基于集群的引擎-数据被自动切分并复制到数个机器上(数据节点), 适合于那些需要极高查询性能和高可用性的应用, 原来是为爱立信的电信应用设计的。 NDB提供了高达99.999%的可靠性,在读操作多的应用中表现优异。 对于有很多并发写操作的应用, 还是推荐用InnoDB.NDB最大的缺点是它的设计是要求内存能容纳整个数据库, 如果你的数据库占用的空间太大, 那NDBCluster就不适合了。

 

存储引擎说明图

 

横向比较的是效率,纵向比较的数据可靠性

 

 

针对不同的用途应用不同的存储引擎

 

搜索方面:NDBCluster

web统计数据 :Flat file

金融事务- InnoDB
Session数据 - MyISAM or NDBCluster
本地计算数据 - HEAP
字典索引 - MyISAM

 

 

原文地址《MySQL Storage Engines 》。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值