数码资讯
在深入讨论:MySQL数据库MyISAM和InnoDB存储引擎的比较
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
MySQL的各种存储引擎,和MyISAM和InnoDB是常用的两种类型。这里有一些基本的概念(不深)的两个引擎。
MyISAM is the default storage engine for MySQL, supports full text search based on traditional ISAM types, but is not transactional, and does not support foreign keys.Each MyISAM table is stored in three files: the frm file stores the table definition; the data file is MYD (MYData); the index file is MYI (MYIndex).
InnoDB事务引擎,支持回滚,崩溃恢复能力、多版本并发控制,酸处理,支持行级锁(InnoDB表的行锁也不是绝对的,如果在一个SQL语句执行MySQL不能确定扫描范围,InnoDB也将锁表的SQL语句,如像操作时,以及提供)打开阅读与oracle.innodb存储在一个表空间的表和索引的类型一致,在一个表空间可以包含多个文件。
主要区别:
MyISAM是非事务安全型,和InnoDB是交易安全型。
MyISAM锁的粒度是一个表的水平,而InnoDB支持行级锁。
MyISAM支持完整的文本类型的索引,而InnoDB不支持完整的全文索引。
MyISAM是相对简单的,所以它比我们更有效率,而小的程序可以考虑使用MyISAM。
MyISAM表是一个文件的形式保存,和MyISAM存储在跨平台数据传输的使用会省去很多麻烦。
InnoDB表比MyISAM表更安全。它可以非事务表切换到事务表(tablename表类型= InnoDB)时,数据不丢失。
应用场景:
MyISAM管理非事务表,它提供了高速存储和检索,以及全文搜索功能。如果你需要进行大量的选择在应用程序的查询,那么MyISAM是更好的选择。
InnoDB用于事务处理应用程序的许多功能,包括酸处理的支持。如果你需要进行大量的应用程序中插入或更新操作,你应该使用InnoDB,可提高多用户并发操作的性能。
常用命令:
(1)查看表的存储类型(三种):
显示创建表的语句
从北京name = tablename表状态
MySQLShow U用户密码--现状dbname是P
(2)修改表的内存引擎:
tablename表类型= InnoDB
(3)将以下参数添加到MySQL数据库的命令行中,使新发布的表在默认情况下使用该事务:
-默认表类型= InnoDB
(4)临时更改默认表类型:
集table_type = InnoDB
显示变量like'table_type
MyISAM is the default storage engine for MySQL, supports full text search based on traditional ISAM types, but is not transactional, and does not support foreign keys.Each MyISAM table is stored in three files: the frm file stores the table definition; the data file is MYD (MYData); the index file is MYI (MYIndex).
InnoDB事务引擎,支持回滚,崩溃恢复能力、多版本并发控制,酸处理,支持行级锁(InnoDB表的行锁也不是绝对的,如果在一个SQL语句执行MySQL不能确定扫描范围,InnoDB也将锁表的SQL语句,如像操作时,以及提供)打开阅读与oracle.innodb存储在一个表空间的表和索引的类型一致,在一个表空间可以包含多个文件。
主要区别:
MyISAM是非事务安全型,和InnoDB是交易安全型。
MyISAM锁的粒度是一个表的水平,而InnoDB支持行级锁。
MyISAM支持完整的文本类型的索引,而InnoDB不支持完整的全文索引。
MyISAM是相对简单的,所以它比我们更有效率,而小的程序可以考虑使用MyISAM。
MyISAM表是一个文件的形式保存,和MyISAM存储在跨平台数据传输的使用会省去很多麻烦。
InnoDB表比MyISAM表更安全。它可以非事务表切换到事务表(tablename表类型= InnoDB)时,数据不丢失。
应用场景:
MyISAM管理非事务表,它提供了高速存储和检索,以及全文搜索功能。如果你需要进行大量的选择在应用程序的查询,那么MyISAM是更好的选择。
InnoDB用于事务处理应用程序的许多功能,包括酸处理的支持。如果你需要进行大量的应用程序中插入或更新操作,你应该使用InnoDB,可提高多用户并发操作的性能。
常用命令:
(1)查看表的存储类型(三种):
显示创建表的语句
从北京name = tablename表状态
MySQLShow U用户密码--现状dbname是P
(2)修改表的内存引擎:
tablename表类型= InnoDB
(3)将以下参数添加到MySQL数据库的命令行中,使新发布的表在默认情况下使用该事务:
-默认表类型= InnoDB
(4)临时更改默认表类型:
集table_type = InnoDB
显示变量like'table_type
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。