MySQL支持的存储引擎以及区别

存储引擎:Mysql用各种不同的存储技术,将数据存储到文件或内存中。数据库存储引擎是数据库的底层的软件组件,数据库可以使用数据存储引擎进行创建,查询,更新和删除数据的操作。不同的存储引擎会提供不同的存储机制,索引技巧,锁定水平等功能,现在许多的数据库管理系统都支持多种的不同的存储引擎。

两种最常用的存储引擎:InnoDB和MyISAM

InnoDB和MyISAM的区别:

  • 事务支持:InnoDB ⽀持事务处理,可以使⽤ ACID(原⼦性、⼀致性、隔离性、持久性)来保证数据的完整性和⼀致性。⽽ MyISAM 不⽀持事务处理,不能保证数据的⼀致性。如果需要使⽤事务,应该选择 InnoDB。
  • 锁机制:InnoDB 采⽤⾏级锁定,只锁定需要修改的⾏,提⾼并发性能。⽽MyISAM采⽤表级锁定,会锁定整 个表,如果多个⽤户同时访问⼀个表,就会出现互相等待的情况,降低并发性能。如果需要⾼并发性能,应该 选择 InnoDB。
  • 外键约束:InnoDB ⽀持外键约束,可以通过外键约束实现关联查询和级联删除等功能。⽽MyISAM不⽀持外 键约束。如果需要使⽤外键约束,应该选 InnoDB。
  • 性能:MyISAM在读取数据⽅⾯的性能表现较好,在⼤量读取的情况下效率更⾼。⽽ InnoDB 在处理事务和⼤ 量并发查询的情况下性能更好。选择存储引擎的时候需要根据应⽤程序的读写⽐例和并发性能的需求来选择

你可能感兴趣的:(MySQL,mysql,数据库)