繁体   English   中英

哪个MySQL数据库引擎(MyISAM与InnoDB)用于繁忙的表?

[英]Which MySQL DB engine (MyISAM vs InnoDB) for very busy tables?

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

网站特征 -年轻音乐制作人与他人分享他们的作品(音乐)的地方。 如您所料,上传和下载音乐时会有很多查询。

这是我数据库中的两个主表: “用户” -27列和“文件” -22列

这是我的问题,对于两个表,哪种引擎将比MyISAM和InnoDB更好?

MyISAM锁定整个表,所以如果有人上载文件时我能正确理解MySQL锁定表以写入文件数据,然后同时有人请求下载甚至其他文件,则此请求必须等到Mysql解锁表才对吗?

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

对我来说,这建议您需要一个支持行级锁定的存储引擎,即InnoDB。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM