【问题标题】:MyISAM or InnoDB for a mostly-write tableMyISAM 或 InnoDB 用于主要写入表
【发布时间】:2011-09-21 08:00:17
【问题描述】:

我有一个每秒接收大约 50 次插入的表。现在有 700k 条记录,使用 160 MiB。我的带有 1 gig ram 的小 VPS 正在跟上,但只是勉强。

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

但这是正确的选择吗?

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

【问题讨论】:

  • 你应该得到一个只为你而不是 X 用户专用的硬盘。如果您使用 InnoDB,您将能够推动超过 50 次插入/秒(如果我没记错 7200RPM 驱动器,大约 150 次)而不会出现问题。除此之外,约翰说的话(我+1)。

标签: mysql innodb myisam storage-engines


【解决方案1】:

InnoDB,毫无疑问。

  • 行级锁定
  • 交易
  • 更好的诚信

InnoDB 也允许延迟插入。

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

【讨论】:

  • 好答案。但是你什么时候真的想使用 myisam。特殊的编译似乎很少见。
猜你喜欢
  • 2011-04-24
  • 2013-11-10
  • 1970-01-01
  • 1970-01-01
  • 2011-10-17
  • 1970-01-01
  • 2011-04-08
  • 2012-05-15
  • 1970-01-01
相关资源
最近更新 更多