MySQL的引擎取决于安装时如何被编译的。
ISAM
最初设计是考虑到查询次数比写入要多,所以查询速度很快,但是不支持事务和容错,当硬盘发生故障时数据就无法被恢复,需要实时备份数据来解决该问题。
MyISAM
比起ISAM,多了索引、字段管理等大量功能,支持锁表,在高并发的情况下极其适用,避免同时操作同一数据,但是需要经常运行OPTIMIZE TABLE命令来恢复更新机制所浪费的空间。同样,表损坏之后无法进行数据恢复。
HEAP
可以将临时表格存储在内存当中,查询速度比以上两者都要快,但是非常不稳定,如果关机之前没有及时保存,数据就会全部丢失,表格用完之后记得释放内存空间。
InnoDB
该引擎支持事务与外键的处理,但是查询速度与以上相比慢很多,而且该引擎不会记录表行数,需要查询行数时引擎会自动扫描全表进行统计。删除表数据时只会逐行删除,不会以重建表的方式清除数据。
网友评论