我有500万行数据库,但内部连接和IN需要很长时间(55秒,60秒)。所以我正在检查MyISAM设置是否有问题。如何调整MySQL的存储引擎
查询: SHOW STATUS LIKE '键%'
+------------------------+-------------+
| Variable_name | Value |
+------------------------+-------------+
| Key_blocks_not_flushed | 0 |
| Key_blocks_unused | 275029 |
| Key_blocks_used | 3316428 |
| Key_read_requests | 11459264178 |
| Key_reads | 3385967 |
| Key_write_requests | 91281692 |
| Key_writes | 27930218 |
+------------------------+-------------+
给我你的建议,增加的MyISAM的性能
MyISAM是一个可怕的数据库引擎。使用InnoDB如果可以的话,MyISAM将拥有很多功能,例如记录日志,并且不会发生爆炸,并且如果数据损坏则会丢失所有数据。 – tadman
由于某些原因,我不能改变引擎,如果现在不完全是这样的效果......但我们正在使用大量的读取数据......这是最好的MyISAM –
MyISAM对于任何事情都不是“最好的”。它是从20世纪90年代开始的,十多年来一直没有受到太多关注。 InnoDB始终易于扩展,MySQL 5.0到5.7的性能已经有了巨大的提升。我希望你最终能够改变这种情况,你可以在InnoDB的引擎上投入大量的内存,并使其与MyISAM相比飞行。 – tadman