存储引擎(处理表的处理器)
1、基本操作
1、查看所有的存储引擎
show engines;
2、查看已有表的存储引擎
show create table 表名;
## engine=innodb
3、创建表时指定存储引擎
create table 表名(...)engine=myisam;
4、工作中常用存储引擎
InnoDB myisam
[mysqld]
defaut-storage-engine=myisam
2、常用存储引擎的特点
1、innodb特点
1、共享表空间
表名.frm 表结构
表名.ibd 表记录&索引信息
2、支持行级锁
2、myisam特点
1、独享表空间
表名.frm 表结构
表名.myd 表记录
表名.myi 索引文件
2、支持表级锁
3.MEMORY存储引擎
MEMORY表的每个表可以有多达32个索引,每个索引16列,以及500字节的最大键长度。
可以在一个MEMORY表中有非唯一键值。
MEMORY支持AUTO_INCREMENT列和对可包含NULL值的列的索引。
MEMORY表在所由客户端之间共享(就像其他任何非TEMPORARY表)
3、锁
1、加锁的目的
解决客户端并发访问的冲突问题
2、锁的分类
1、锁类型
读锁(select)共享锁:加读锁后不能更改表中内容,但可以进行查询
写锁 互斥锁 排他锁
2、锁粒度
表级锁
行级锁
4、如何决定表使用哪种存储引擎
1、执行查询操作多的表使用myisam(使用innodb浪费资源)
2、执行写操作多的表使用innodb存储引擎