InnoDB存储引擎的主要优点
InnoDB是一种可靠性高的高性能MySQl数据库存储引擎,主要优点包括:
- 它遵循ACID模式设计,具有与事务(Transactions),回滚和保护用户数据的崩溃恢复能力。
- InnoDB 提供行级锁(Locking on row level),拥有与Oracle类似的不加锁读取(Non-locking read in SELECTs)。InnoDB锁定在行级,并在SELECT语句提供一个Oracle风格一致的非锁定读。这些特色增加了多用户并发性和性能表现。没有在InnoDB中扩大锁定的需要,因为在InnoDB中行级锁定适合非常小的空间。
- InnoDB表基于主键在磁盘上安排数据,有优化的常见查询功能。每一个InnoDB表都有一个叫做聚集索引的主键索引,能尽可能减少数据查询次数。
- 为了维护数据完整性,InnoDB还支持外键完整性约束。
- 可以与其它MySQL存储引擎混合使用InnoDB表。例如,能用一个结合操作在一个单独查询中综合源自InnoDB和InnoDB表的数据。
- InnoDB是针对提高CPU效率而设计的,并且在处理大数据时表现最佳。
显示存储引擎的命令
可以在登陆MySQL数据库后,通过下述命令确定自己的服务器是否支持InnoDB:
mysql> SHOW ENGINES\G
“SHOW ENGINES”能显示与服务器存储引擎有关的信息。这对确实一种存储引擎是否得到支持或查看默认引擎很重要。查询结果显示的存储引擎如果是“YES”,表示支持;而“DEFAULT”代表默认存储引擎。
InnoDB 存储引擎的特点
InnoDB存储引擎用自己的缓冲池维护主内存里的缓存数据和索引。InnoDB将它的表和索引存储在表空间里,可以由几个文件(或原始磁盘分区)组成。这一点与使用不同文件存储数据的MyISAM表明显不同。InnoDB表可以非常大,操作系统所在的文件被限制在2GB。
在服务器支持InnoDB的情况下,Windows Essentials installer使InnoDB成为Windows上MySQL的默认表。
相关文章: