1.存储引擎的使用
create table t_user{
id int(11) not null
}engine=InnoDB default charset=utf8;
建表的时候可以指定存储引擎和字符集
默认为InnoDB和UTF8
2.常用的存储引擎
2.1MyISAM
MyISAM是MyS中最常用的存储引擎,但是不是默认的,不支持事物
采用三张文件组织一张表:
- xxx.frm (存储格式)
- xxx.MYD (存储表中数据)
- xxx.MYI (存储表中索引)
优点:可被压缩,节省存储空间;可以转换为只读表,提高检索效率
缺点:不支持事务
2.2InnoDB
InnoDB是MySQL的缺省引擎
表的结构存储在xxx.frm文件中
数据存储在tablespase中
优点:支持事务、行级锁、外键、级联删除和级联更新,数据的安全的到保障(在MySQL崩溃或提供自动回复机制)
缺点:无法被压缩,无法被转换为只读
2.3MEMORY
在数据库目录中,表与xxx.frm格式的文件表示
支持锁机制
不包含TEXT会BLOB字段
优点:查询速度快
缺点:不支持事务,数据易丢失(数据和索引存储在内存当中,且行的长度固定)
3.选择合适的存储引擎
MySQL中支持很多存储引擎,5.5.36版本支持9个,每个都对应一种不同的存储方式,有各自的优缺点,需要在合适的时机选择合适的存储引擎
传送门
上一章:MySQL 第四章 DML表数据
下一章:MySQL 第六章 TCL事务