mysql - MyISAM 或 InnoDB 用于最常写入的表

标签 mysql innodb myisam storage-engines

我有一个表,每秒接收大约 50 次插入。目前有 700k 条记录,使用 160 MiB。我的带有 1 GB 内存的小型 VPS 可以跟上,但只能勉强维持。

我选择了 InnoDB,正如人们所说的“它的扩展性更好”,损坏的频率较低,并且实现行锁定而不是表锁定。

但是这是正确的选择吗?

我还读到 MyISAM 支持延迟插入,这可能非常有趣。 (我想知道表锁定的权衡是什么)

最佳答案

InnoDB,毫无疑问。

  • 行级锁定
  • 交易
  • 更加诚信

InnoDB 也允许延迟插入。

我能想到的唯一问题是运行MySQL没有InnoDB支持(源代码的特殊编译)可以使用100MB少的内存.
但不要这样做,这不值得让人头疼。

关于mysql - MyISAM 或 InnoDB 用于最常写入的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6456394/

相关文章:

mysql - 如何使用 yii2 框架在数据库中的邮件正文中显示图像

php - 使用 session 变量从数据库中提取额外数据

mysql - 对象值未传递

mysql : multiple tables or one big table?

mysql - 说明 - 默认外键约束 - InnoDB

mysql - 根据与前一天数据的差异获得前 5 个结果

mysql - 在mysql(innodb)中,大表如何影响缓冲区(内存)?

mysql - 将 InnoDB 表与 MyISAM 表连接起来

Mysql性能: How to store files tree in the database?

mysql - Jmeter测试MyISAM/InnoDB