创建表的时候默认选中:InnoDB
假如只是查询的话,不需要事务处理 可以用MyISAM
对于处理千万级的数据也是很快的
如果速度不够还可以加为单个字段添加 索引
![](https://img-blog.csdn.net/2018030216351894?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvR3VhbmdSb25nMQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
![](https://img-blog.csdn.net/20180302164240387?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvR3VhbmdSb25nMQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
主要区别:
应用场景:
假如只是查询的话,不需要事务处理 可以用MyISAM
对于处理千万级的数据也是很快的
如果速度不够还可以加为单个字段添加 索引
主要区别:
- 1).MyISAM是非事务安全型的,而InnoDB是事务安全型的。
- 2).MyISAM锁的粒度是表级,而InnoDB支持行级锁定。
- 3).MyISAM支持全文类型索引,而InnoDB不支持全文索引。
- 4).MyISAM相对简单,所以在效率上要优于InnoDB,小型应用可以考虑使用MyISAM。
- 5).MyISAM表是保存成文件的形式,在跨平台的数据转移中使用MyISAM存储会省去不少的麻烦。
- 6).InnoDB表比MyISAM表更安全,可以在保证数据不会丢失的情况下,切换非事务表到事务表(alter table tablename type=innodb)。
应用场景:
- 1).MyISAM管理非事务表。它提供高速存储和检索,以及全文搜索能力。如果应用中需要执行大量的SELECT查询,那么MyISAM是更好的选择。
- 2).InnoDB用于事务处理应用程序,具有众多特性,包括ACID事务支持。如果应用中需要执行大量的INSERT或UPDATE操作,则应该使用InnoDB,这样可以提高多用户并发操作的性能。
- 比如:日志的查询