对于非常繁忙的表,哪个MySQL数据库引擎(MyISAM vs InnoDB)?

时间:2013-07-24 16:24:07

标签: mysql innodb

我怀疑哪个数据库引擎选择了几张桌子。我已经研究了几篇文章,书籍和类似的数据库构建,但仍然不确定。

网站特色 - 年轻音乐制作人与他人分享作品(音乐)的地方。正如你的猜测,在上传和下载音乐时会有很多疑问。

以下是我的数据库中的两个主要表:'用户' - 27列和'文件' - 22列

我的问题是哪个引擎对两个表都更好MyISAM vs InnoDB?

MyISAM锁定整个表如果我正确理解当有人上传文件MySQL锁定表来写文件数据然后如果同时有人要求下载甚至其他文件这个请求必须要等到Mysql解锁表对吗?

1 个答案:

答案 0 :(得分:4)

正如您自己所说,MyISAM表使用表级锁定。因此,如果流量很高,InnoDB将是正确的选择。使用MyISAM,一次只能有一个用户进行交互。您必须确保您的硬件能够跟上这些流量,以避免超支。

这表明我需要一个支持行级锁定的存储引擎,即InnoDB。