innodb和myisam的差异化
这个问题想必大家都被问过无数次。今天来总结一下。 1.myisam: 文件结构:frm,myi,myd frm是文件信息,myi是索引文件,myd是数据文件。(5.6之前只有myisam支持全文检索。Innodb不支持全文检索,5.6以后开始支持。)mysiam的索引文件会比innodb的小。因为是分开存放的,所以索引文件进行了压缩。而innodb是 myisam引擎支持的表锁,这样就造成myisam对并发的支持非常差。如果对一张表的数据进行修改,整张表都会被锁定,其他进程只能等待该进程释放后才能对该表进行读和写。 select和Insert较innodb来说快。 引用两篇性能测试文章 2012年 http://www.4wei.cn/archives/1001855 2014年 http://xmgu2008.blog.163.com/blog/static/139122380201402492349491/ 从第一篇文章中可以看到,innodb因为受 innodb_flush_log_at_trx_commit 这个选项的影响,所以自动提交和手动提交性能相去甚远。 取select count(*)极快,因为myisam表都会有一个叫表状态的内存空间。这个表的总记录数,以及修改时间和表的长度等等关键数据都是存在一个单独的内存块里面的,当你发起select count(*