innodb(innodb)和存储引擎(myisam)的区别

InnoDB是数据库管理系统MySQL的引擎。它提供了标准的符合ACID的transactionfeatures,以及外键支持(声明性引用完整性)。InnoDB支持:...

007Ys3FFgy1gwtsna9i3tj30k908c3yu

InnoDB是数据库管理系统MySQL的引擎。它提供了标准的符合ACID的transactionfeatures,以及外键支持(声明性引用完整性)。InnoDB支持:

  • 表空间
  • 外键
  • 全文搜索索引
  • 空间操作
  • 虚拟列
  • SQL和XA事务。

MyISAM是2009年12月发布的MySQL关系数据库管理系统5.5之前版本的默认存储引擎。它基于旧的ISAMcode,但有许多有用的扩展。

MyISAM:

  • 不支持外键
  • 指数统计通常相当准确
  • 由于索引的结构,允许快速读取。
  • 它涉及对非常大的表的查询
  • 支持全文搜索索引

区别:innodb(the difference: innodb) vs. 存储引擎(myisam)

  1. InnoDB是MySQL5.5及更高版本的默认存储引擎,而MyISAM是MySQL5.4及更低版本的默认存储引擎。
  2. InnoDB支持行级锁定,而Myisams支持表级锁定。
  3. InnoDB将其表和索引存储在TableSpace中,而MyISAM使用三个不同的文件将表、数据和索引存储在diskspace中。(tablename.FRM、tablename.MYD、tablename.MYI)
  4. InnoDB是关系型DBMS(RDBMS),因此它具有引用完整性并支持外键,包括级联删除和更新,而MyISAM不是RDBMS,因此不支持引用完整性和外键。
  5. InnoDB的写入速度更快,而MyISAM的读取速度更快。
  6. InnoDB支持数据和索引的大型缓冲池。MyISAM密钥缓冲区仅用于索引。
  7. InnoDB中没有全文搜索,MyISAM支持全文搜索。
  8. InnoDB支持ACID(原子性、一致性、隔离性和耐久性)属性。另一方面,MyISAM不支持酸(原子性、一致性、隔离性和耐久性)特性。
  9. InnoDB支持事务(回滚、提交),而MyISAM不支持事务。
  10. MyISAM本质上不是动态的,由于其动态特性,所有未来的增强都将在InnoDB中进行,例如,随着8.0版的推出,很明显,所有未来的增强都将在InnoDB中进行。
  11. InnoDB对于大容量数据的性能远远优于MyISAM。
  12. InnoDB提供了可靠性,因为它使用一个反操作日志来维护这些操作,因此,如果出现故障,它可以使用这些日志轻松恢复。另一方面,MyISAM提供了nodata完整性;硬件故障和取消的操作可能会导致数据损坏。

Also Read: Difference Between DBMS And RDBMS

innodb与myisam的表格形式对比

比较依据 InnoDB 米萨姆
存储的MySQL版本类型 InnoDB是MySQL 5.5及更高版本的默认存储引擎。 MyISAM是MySQL 5.4及更低版本的默认存储引擎。
表锁定与行锁定 InnoDB支持行级锁定。 MyISAM支持表级锁定。
表、数据和索引的存储 InnoDB将其表和索引存储在表空间中。 MyISAM使用三个不同的文件在diskspace中存储表、数据和索引。(tablename.FRM、tablename.MYD、tablename.MYI)
引用完整性和外键 InnoDB是一个关系数据库管理系统(RDBMS),因此它具有引用完整性,并支持外键,包括级联删除和更新。 MyISAM不是RDBMS,因此不支持引用完整性和外键。
速度 InnoDB的写入速度更快。 MyISAM的读取速度更快。
缓存 InnoDB支持数据和索引的大型缓冲池。 MyISAM密钥缓冲区仅用于索引。
全文索引 在InnoDB中没有全文搜索。 MyISAM支持全文搜索。
酸性 InnoDB支持ACID(原子性、一致性、隔离性和耐久性)属性。 MyISAM不支持酸性(原子性、一致性、隔离性和耐久性)特性。
交易 InnoDB支持事务(回滚、提交)。 MyISAM不支持事务。
自然界 随着8.0版的推出,很明显,所有未来的增强功能都将在InnoDB上实现。 MyISAM本质上不是动态的。
表演 InnoDB对于大容量数据的性能远远优于MyISAM。 MyISAM对于大容量数据的性能不如InnoDB。
可靠性 InnoDB提供了可靠性,因为它使用事务日志来维护这些操作,因此,如果出现故障,它可以使用这些日志轻松恢复。 MyISAM不提供数据完整性;硬件故障和取消的操作可能会导致数据损坏。

Also Read: Difference Between OORDBMS And ODBMS

  • 发表于 2021-11-27 16:35
  • 阅读 ( 109 )
  • 分类:IT

你可能感兴趣的文章

mysql数据库模式编写入门指南

...) NOT NULL,created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP) engine=InnoDB;CREATE TABLE orders (id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,userid INT NOT NULL,amount DECIMAL(8,2) NOT NULL,product_name VARCHAR(200) NOT NULL,FOREIGN KEY (userid) REFERENCES users (id) ON DELETE CASCADE) engine=I...

  • 发布于 2021-03-26 19:24
  • 阅读 ( 227 )

为下一个项目考虑6个数据库引擎

... 它完全支持更高级的功能,包括事务、触发器、视图、存储过程、分区、复制等,为您提供了所需的一切。 ...

  • 发布于 2021-03-28 09:56
  • 阅读 ( 269 )

三星galaxy j7(samsung galaxy j7)和银河j7 prime(galaxy j7 prime)的区别

...一个500万像素的前摄相机,可以点击很酷的**。它有两个存储选项:8 GB和16 GB,如果您需要额外的存储空间,当然可以升级到128GB。   三星galaxy j7 prime:主要功能 J7 Prime是对J系列的重大升级,这无疑将它带到了一个新的水平,...

  • 发布于 2021-06-25 05:50
  • 阅读 ( 348 )

美国焊接学会(aws)和谷歌云(google cloud)的区别

...量不断增加,迫使企业和组织转向更高效、更安全的数据存储解决方案——云。在过去几年中,由于移动互联网速率的快速下降,数据使用量增长了数倍,企业数据中心发现难以每天管理大量数据。这就是云彩出现的地方。云是...

  • 发布于 2021-06-25 18:32
  • 阅读 ( 304 )

hadoop软件(hadoop)和火花(spark)的区别

...,以使用户更容易访问信息。apachehadoop就是这样一种用于存储和处理大数据的解决方案,它与apachespark等许多其他大数据工具一起使用。但是哪一个是数据处理和分析的正确框架呢?Hadoop还是Spark?让我们看看。   apache hadoop Had...

  • 发布于 2021-06-26 10:55
  • 阅读 ( 271 )

弹性搜索(elasticsearch)和hadoop软件(hadoop)的区别

...为一个搜索引擎,Elasticsearch是一个分布式的多租户文档存储。Hadoop是一个分布式框架,它允许使用简单的编程模型在分布式环境中跨计算机集群存储和处理大数据。   什么是弹性搜索(elasticsearch)? Elasticsearch是一个高度可扩展...

  • 发布于 2021-06-26 11:54
  • 阅读 ( 814 )

蜂巢(hive)和黑斑羚(impala)的区别

...集,而Impala是一个大型并行处理SQL引擎,用于管理和分析存储在Hadoop上的数据。 Hive是一个开源的数据仓库系统,用于查询和分析Hadoop文件中存储的大型数据集。Impala提供了访问Hadoop分布式文件系统中存储的数据的最快方法。它...

  • 发布于 2021-07-01 02:54
  • 阅读 ( 300 )

浏览器(browser)和搜索引擎(search engine)的区别

...显的区别,尽管有些人可以互换使用这两个词。搜索引擎存储有关网站的可搜索数据,而用户应在其设备中安装web浏览器以查看网站。例如,google.com是一个搜索引擎,而Firefox是一个web浏览器。 覆盖的关键领域 1.什么是浏览器-...

  • 发布于 2021-07-01 05:26
  • 阅读 ( 807 )

实例(instance)和sql server中的数据库(database in sql server)的区别

...务运行的sqlservr.exe可执行文件的副本,而数据库是在表中存储数据的系统数据集合。 sqlserver是微软开发的关系数据库系统。它由GUI和命令行组成。程序员可以使用SQL编写查询并在sqlserver上执行它们。SQL Server提供了多种优势。它...

  • 发布于 2021-07-01 06:19
  • 阅读 ( 986 )

擅长(excel)和接近(access)的区别

...地表示数据,而Access是一个数据库管理系统,用于方便地存储和管理数据。 Excel和Access是两个Microsoft应用程序。它们都属于Microsoft Office套件。Excel由带有单元格的工作表组成,用于执行计算、创建图表和许多其他任务。另一方面...

  • 发布于 2021-07-01 21:56
  • 阅读 ( 330 )
huw3832
huw3832

0 篇文章

相关推荐