• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 使用InnoDB表的好处

    您可能会InnoDB因为以下原因而发现表格有益:

    • 如果服务器由于硬件或软件问题而崩溃,无论当时数据库中发生了什么,重新启动数据库后都无需执行任何特殊操作。InnoDB崩溃恢复会自动完成崩溃之前已提交的所有更改,并撤消正在处理但尚未提交的所有更改。只需重新启动,然后从上次中断的地方继续即可。
    • InnoDB存储引擎维护它自己的缓冲池,在主内存缓存表和索引数据作为数据被访问。经常使用的数据直接从内存中处理。此缓存适用于多种类型的信息,并加快了处理速度。在专用数据库服务器上,通常将多达80%的物理内存分配给缓冲池。
    • 如果将相关数据拆分到不同的表中,则可以设置强制引用完整性的外键。更新或删除数据,并自动更新或删除其他表中的相关数据。尝试将数据插入到辅助表中,而在主表中没有相应的数据,那么不良数据将自动被踢出。
    • 如果数据在磁盘或内存中损坏,则校验和机制会在使用前提醒您注意虚假数据。
    • 当为每个表设计具有适当主键列的数据库时,涉及这些列的操作会自动进行优化。在WHERE子句,ORDER BY子句,GROUP BY子句和联接操作中引用主键列非常快速。
    • 插入,更新和删除通过称为更改缓冲的自动机制进行了优化。InnoDB不仅允许对同一表的并发读写访问,而且还缓存更改的数据以简化磁盘I / O。
    • 性能收益不仅限于具有长时间运行的查询的巨型表。当从表中一遍又一遍地访问相同的行时,称为“自适应哈希索引”的功能将使这些查询变得更快,就好像它们来自哈希表一样。
    • 您可以压缩表和关联的索引。
    • 您可以创建和删除索引,而对性能和可用性的影响要小得多。
    • 截断每表文件表空间非常快,并且可以释放磁盘空间供操作系统重用,而不是释放只能重用的系统表空间中的空间InnoDB
    • BLOB使用DYNAMIC行格式,对于长文本字段,表数据的存储布局更为有效。
    • 您可以通过查询INFORMATION_SCHEMA 表来监视存储引擎的内部工作情况。
    • 您可以通过查询性能架构表来监视存储引擎的性能详细信息。
    • 您可以自由地将InnoDB表与其他MySQL存储引擎的表混合使用,即使在同一条语句中也是如此。例如,您可以使用联接操作在单个查询中合并来自InnoDBMEMORY表的数据。
    • InnoDB设计用于处理大数据量时的CPU效率和最佳性能。
    • InnoDB表可以处理大量数据,即使在文件大小限制为2GB的操作系统上也是如此。

    对于InnoDB您可以在应用程序代码中应用特异性调节技术,请参阅“优化InnoDB表”。