>데이터 베이스 >MySQL 튜토리얼 >MySQL存储引擎InnoDB、MyISAM 、其它存储引擎介绍_MySQL

MySQL存储引擎InnoDB、MyISAM 、其它存储引擎介绍_MySQL

WBOY
WBOY원래의
2016-06-01 13:10:56955검색

MySQL的不断更新与变化,其实最重要的就是存储引擎的变化和升级,也衍生了很多不同的存储引擎。我们在建立MySQl数据库(也可以成为schema)时基本也会忽略存储引擎的选择,因为一般情况下我们都直接使用的默认存储引擎。

 在MySQL 5.1及之前的版本-MyISAM是默认的存储引擎

在MySQL 5.5及以后的版本-InnoDB是默认的存储引擎

MyISAM和InnoDB应该属是MySQL最常用的两种存储引擎。从发展史来说InnoDB比MyISAM出现得更晚,功能也就更强大,但它不能完全代替MyISAM正是它功能的强大影响了它的性能。有人在追求性能,依然选择MyISAM,当然就放弃的InnoDB的特有功能。

1、InnoDB存储引擎

InnoDB是如今MySQL的默认事务型引擎,也是最重要、使用最广泛的存储引擎。它被设计用来处理大量

的短期事务。Oracle也投入了大量的资源来修改InnoDB,也得到很好的提高,相信后期的版本中InnoDB将近一步的改善。“InnoDB事务模型和锁”也就是最大的特点,当然InnoDB的行为时很复杂的。

(事务处理:类似于在插入两张表是,第一张成功,第二张失败。就会实现“回滚”,删除第一张成功插入的数据)

2、MyISAM存储引擎

MyISAM作为最早的存储引擎之一,经过多年的发展,可以满足用户的实际需求。MyISAM引擎的简单设计,数据以紧密格式存储,所以在大量的情况下性能很好。

3、MySQL内建的其他存储引擎

Archive引擎、Blackhole引擎、CSV引擎、Memory引擎、Merige引擎、NDB集群引擎,当然每个存储引擎都有它的特有特点,不然也不会生存到现在。

4、第三方存储引擎

XtraDB存储引擎、TokuDB存储引擎、Aria存储引擎(Maria改名)、Groonga存储引擎、SphinxSE引擎。上面也只是列举的一下常见的存储引擎,选择存储引擎首先需要了解引用的基本要求,不如InnoDB和MyISAM,如果逻辑复杂当然InnoDB是一个最好的选择,如果是一个凸显性能当让MyISAM要好一些。当让说实话在选择存储引擎与数据库版本时都会带有个人情感,比如我就选择的是Aria存储引擎来开发的一个


医药吧网站(www.yi18.net),其目的是代替MyISAM。这里就带有个人情感“支持MySQL分支与社区”,当让听说Aria比MyISAM性能更好,其实也可以用 XtraDB来代替InnoDB。这些选择都是带有感情色彩。

原文地址:http://blog.yi18.net/articles/2014/05/05/1399270094003.html

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.