innodb和myisam的区别
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了innodb和myisam的区别相关的知识,希望对你有一定的参考价值。
innodb和myisam的区别为:事务不同、外键不同、索引不同。
一、事务不同
1、innodb:innodb不支持事务,无法回滚操作,还原数据。
2、myisam:myisam支持事务,可以回滚操作,还原数据。
二、外键不同
1、innodb:innodb支持外键。
2、myisam:myisam不支持外键。
三、索引不同
1、innodb:对于自增长的字段,InnoDB中必须包含只有该字段的索引。
2、myisam:对于自增长的字段,MyISAM表中可以和其他字段一起建立联合索引。
参考技术A一、特色不同
1、innodb:与传统的ISAM与MyISAM相比,InnoDB的最大特色就是支持了ACID兼容的事务(Transaction)功能,类似于PostgreSQL。
2、myisam:MyISAM在提供数种对性能冲击较低的模式,不会降低事务的完整性。
二、劣势不同
1、innodb:InnoDB也提供数种对性能冲击较低的模式,但相对的也会降低事务的完整性。
2、myisam:不支持事务处理;MyISAM必须依靠操作系统来管理读取与写入的缓存;MyISAM的修复时间,则与数据量的多少成正比。
三、保存不同
1、innodb:InnoDB中不保存表的行数,如select count() from table时,InnoDB需要扫描一遍整个表来计算有多少行。
2、myisam:MyISAM只要简单地读出保存好的行数即可。
参考资料来源:
百度百科-myisam
百度百科-innodb
以上是关于innodb和myisam的区别的主要内容,如果未能解决你的问题,请参考以下文章