【问题标题】:Which Storage Engine is best in MySql? [duplicate]MySql 中哪个存储引擎最好? [复制]
【发布时间】:2012-09-30 13:37:54
【问题描述】:

可能重复:
MyISAM versus InnoDB

MySql 中哪个存储引擎最好? InnoDb 还是 MyIsam?

【问题讨论】:

  • 这取决于您的程序规范。给出一些细节,你愿意做什么以及申请要求是什么......
  • 汽车和自行车哪个更好?
  • 我建议总是开始使用 InnoDB。它有那些我期望来自RDBMS的"magical properties"

标签: mysql storage innodb myisam


【解决方案1】:

没有“最好”,这取决于您/您的应用程序需要什么。

您可以阅读有关差异here in the Reference Manual

InnoDB: MySQL 的事务安全(符合 ACID)存储引擎 具有提交、回滚和崩溃恢复功能来保护 用户数据。 InnoDB 行级锁定(没有升级到更粗的 粒度锁)和 Oracle 风格的一致非锁定读取 提高多用户并发性和性能。 InnoDB 存储用户 聚集索引中的数据,以减少基于数据的常见查询的 I/O 主键。为了保持数据完整性,InnoDB 还支持 FOREIGN 关键参照完整性约束。 InnoDB 是默认存储 MySQL 5.6 中的引擎。

MyISAM: 这些表占用空间小。表级锁定 限制读/写工作负载的性能,因此它通常用于 Web 和数据仓库中的只读或只读工作负载 配置。

【讨论】:

  • 我发现,对于 RDBMS,InnoDB 是“[通常]最好的”。它至少应该是 primary 选择,没有经过 specific 验证的用例。
【解决方案2】:

“最好的”取决于很多事情:

MyISAM 没有关系(外键),如果你想保持表之间的完整性,你必须编写一些触发器,而在 InnoDB 中你可以使用“DELETE ON CASCADE”和这些东西。 但是 InnoDB 在迁移时速度较慢,因为它必须检查约束。

如需更多信息,您可以快速浏览:

http://www.devshed.com/c/a/MySQL/Comparison-of-MyISAM-and-InnoDB-MySQL-Databases-57392/

【讨论】:

    猜你喜欢
    • 2011-11-28
    • 1970-01-01
    • 1970-01-01
    • 2019-10-31
    • 2012-09-09
    • 1970-01-01
    • 2017-04-13
    • 2010-12-14
    • 2011-05-13
    相关资源
    最近更新 更多