3.1.2 lnnoDB

3.1.2 lnnoDB

InnoDB是一个健壮的事务型存储引擎,已经开发了十余年,遵循GNU通用公开许可(GPL)发行。InnoDB已经被一些重量级因特网公司所采用,如雅虎、Slashdot和Google,为用户操作非常大的数据库提供了一个强大的解决方案。自版本3.23.34a开始,MySQL用户就可以使用这个存储引擎,该方案被证明是事务型应用程序的流行且有效的解决方案,自版本4.0开始就默认支持事务。事实上,自版本4.1开始,InnoDB就被MySQL Windows安装包指定为默认引擎。

虽然InnoDB常与其他存储引擎共同使用,就像这里所做的一样,但它本身实际上就是一个完整的数据库后台服务。InnoDB表资源使用专用缓冲区管理,此缓冲区可以像其他任何MySQL配置参数一样进行控制。InnoDB还引入了行级锁定和外键约束,为MySQL带来了很大进步。

InnoDB表是如下情况的理想引擎。

➢ 更新密集的表。InnoDB存储引擎特别适合处理多重并发的更新请求。

➢ 事务。InnoDB存储引擎是支持事务标准的MySQL存储引擎,这是管理敏感数据(如金融信息和用户注册信息)的必需特性。

➢ 自动灾难恢复。与其他存储引擎不同,InnoDB表能够自动从灾难中恢复。虽然MyISAM表也能在灾难后修复,但其过程要长得多。

自版本3.23.44,InnoDB开始支持外键,这是其他存储引擎直到版本5.1才可用的特性。