网站怎么进入后台维护,如何做产品网站建设,北京app搭建公司,网站建设实训报告ppt一、常见存储引擎
我们可以知道表的类型是由存储引擎决定的#xff0c;如图所示#xff0c;我们可以看到MySQL中支持八种储存引擎#xff0c;那么我们这里就介绍常用的三种存储引擎#xff0c;分别是Innodb、MyISAM、Memory。
二、Innodb、MyISAM、Memory的特点
1、Inno…一、常见存储引擎
我们可以知道表的类型是由存储引擎决定的如图所示我们可以看到MySQL中支持八种储存引擎那么我们这里就介绍常用的三种存储引擎分别是Innodb、MyISAM、Memory。
二、Innodb、MyISAM、Memory的特点
1、Innodb
Innodb存储引擎提供了具有提交 、回滚和崩溃恢复能力的事务安全。但是比起MyISAM存储引擎Innodb写的处理效率差并且会占用更多的磁盘空间保留数据和索引。
2、MyISAM
MyISAM存储引擎不支持事务、也不支持外键但访问速度很快对事务的完整性没有要求。
3、Memory
Memory储存引擎使用内存中的内容来创建表。每个Memory表只实际对应一个磁盘文件。Memory类型的表访问非常得快因为它得数据是放在内存中得并且默认使用Hash索引。但是服务器一旦关闭表中数据会丢失但表的结构还在。常用用户的在线情况
三、Innodb与MyISAM的区别
1. InnoDB支持事务MyISAM不支持。对于InnoDB每一条SQL语言都默认封装成事务自动提 交这样会影响速度所以最好把多条SQL语言放在begin和commit之间组成一个事务。
2. InnoDB支持外键而MyISAM不支持。对一个包含外键的InnoDB表转为MYISAM会失败。
3. InnoDB是聚集索引数据文件是和索引绑在一起的必须要有主键通过主键索引效率很高。 但是辅助索引需要两次查询先查询到主键然后再通过主键查询到数据。因此主键不应该 过大因为主键太大其他索引也都会很大。而MyISAM是非聚集索引数据文件是分离的 索引保存的是数据文件的指针。主键索引和辅助索引是独立的。
4. InnoDB支持行锁MyISAM支持表锁。InnoDB不保存表的具体行数执行select count(*) from table时需要全表扫描。而MyISAM用 一个变量保存了整个表的行数执行上述语句时只需要读出该变量即可速度很快。
5. Innodb不支持全文索引而MyISAM支持全文索引查询效率上MyISAM要高。