【问题标题】:MyISAM or InnoDB for social website用于社交网站的 MyISAM 或 InnoDB
【发布时间】:2015-09-18 08:58:36
【问题描述】:

我正在构建一个社交网络网站,但我想知道我必须使用哪种数据库类型?

顺便说一句,脚本使用了很多(插入/更新/删除)查询。

那么我应该使用 MyISAM 还是 InnoDB 呢?

【问题讨论】:

标签: mysql innodb social myisam


【解决方案1】:

MyIsam 对于网站来说是一个非常糟糕的选择。原因如下:

MyISAM 限制:

  • 没有外键和级联删除/更新
  • 没有事务性 完整性(ACID 合规性)
  • 无回滚能力行限制为 4,284,867,296 行 (232)
  • 每行最多 64 个索引

InnoDB 是一个合适的引擎,或者如果你不局限于 mysql,postgres 可能会让你受益更多。

【讨论】:

  • 行数限制是老生常谈。 64 个二级索引是 InnoDB 的限制。 (5 是 实际 限制。)More limits.
  • 事务完整性和回滚是这里的主要问题。其他一切都是性能/在应用程序层中执行的问题。如果您不需要数据完整性,那么 sql 作为数据库可能是开销。
【解决方案2】:

您可以在 innoDB 中进行提交和回滚

【讨论】:

    【解决方案3】:

    绝对应该是innodb,正如你所说的那样会执行这么多的插入/更新/删除......即使是mysql 5.6版本也主要包含myisam功能。

    唯一的缺点是innodb比myisam需要更多的服务器资源,所以如果你有合适的服务器资源那么你应该使用innodb。

    【讨论】:

    猜你喜欢
    • 2013-11-10
    • 1970-01-01
    • 2011-09-21
    • 1970-01-01
    • 1970-01-01
    • 2011-08-13
    • 1970-01-01
    • 1970-01-01
    • 2014-02-12
    相关资源
    最近更新 更多