您的位置:首页 > 数据库 > MySQL

mysql那些事(5)建表存储引擎的选择

2017-12-29 10:47 323 查看
在mysql见表的时候,会遇到选择存储引擎:MyISAM和InnoDB。究竟用哪种存储引擎好呢?

1、MyISAM:表锁;支持全文索引;读并发性能较好。

2、InnoDB:行锁;支持事务,支持外键;写并发性能较好。

实际上,现在大多数的公司里,mysql的规定都是使用InnoDB作为默认存储引擎,除了支持事务和行锁是比较重要的两个原因外,其实MyISAM在实际应用场景中意义也不大,并且一个重要原因是,官方支持力度大。oracle很早就收购了InnoDB,后面又收购了mysql,现在重点发展InnoDB引擎。

另外,MyISAM表锁在并发写操作多时会严重影响读操作。

那InnoDB的在又是怎么弥补读并发和索引的问题呢?

索引现在不应该用mysql本身来解决,应该使用第三方的软件,比如:ES,Sphinx;

至于读表的性能,从架构和缓存等方面完全可以解决,并且技术解决方案非常成熟。


so,创建mysql数据表请毫不犹豫选择:InnoDB。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: