一.mysql体系结构
1.连接层
2.服务层
3.引擎层
4.存储层
二..存储引擎简介
存储引擎就是存储数据,建立索引,更新/查询数据等技术的实现方式。存储引擎是基于表的,而不是基于库的,所以存储引擎也可以被称为表类型。
三.默认存储引擎
show create table account
四.查询当前数据库支持的存储引擎
SHOW ENGINES;
Engine:存储引擎 Support:是否支持
五.innoDB
1.介绍
innoDB是一种兼顾可靠性和高性能的通用存储引擎,在MySQL 5.5之后,InnoDB是默认的MySQL存储引擎。
2.特点
DML操作遵循ACID模型,支持事务;
行级锁,提高并发访问性能;
支持外键FOREIGN KEY 约束.保证数据的完整性和正确性;
3.文件
xxx.ibd: xxx代表的是表名,innoDB引擎的每张表都会对应一个这样一个表空间文件,存储该表的表结构(frm,sdi),数据和索引。
参数:innodb_file_per_table
六.逻辑存储结构
七.MyISAM存储引擎的特点
1.介绍
MyISAM是MySQL早期的默认存储引擎。
2.特点
1.不支持事务.不支持外键
2.支持表锁,不支持行锁
3.访问速度快
3.文件
xxx.sdi :存储表结构信息
xxx.MYD:存储数据
xxx.MYI:存储索引
八.Memory
1.介绍
Memory引擎的表数据时存储在内存中的,由于受到硬件问题,或断电问题的影响,只能将这些表作为临时表或缓存使用。
2.特点
1.内存存放
2.hash索引(默认)
九.存储引擎选择
十.总结
1.体系结构
连接层,服务层,引擎层,存储层
2.存储引擎简介
SHOW ENGINES
CREATE TABLE XXXX(......) ENGINE=INNODB;
3.存储引擎特点
INNODB 与MyISAM:事务,外键,行级锁
4.存储引擎应用
INNODB:存储业务系统中对于事务,数据完整性要求较高的核心数据。
MyISAM:存储业务系统的非核心事务。