查看MySQL支持哪些存储引擎
show engines\G;
创建一个表指定使用innoDB存储引擎
create table engine_t1(i int)engine=innoDB;
修改当前会话的默认存储引擎
set default_storage_engine=Memory;
create table engine_t2(i int);
show create table engine_t2;
可以看到engine_t2的存储引擎为Memory
修改表的存储引擎
alter table engine_t2 engine=innoDB;
常用存储引擎
InnoDB:MySQL5.5之后的默认存储引擎,支持事务,MVCC
MyISAM:MySQL5.5之前的默认存储引擎,不支持事务,表锁的设定,在5.5之后的版本,基本不怎么使用,不建议使用,并发能力差,容易出现表损坏,数据丢失的情况
TokuDB:支持高压缩比,快速写入和删除等特点,可以用在海量数据场景,或者需要快速插入和删除的场景
Columnstore:采用列式存储,并且自动压缩 ,比较适用于大数据的场景
MEMORY:数据全在内存中,读取快,但是重启MySQL数据会丢失,适用于需要极快读写速度的临时表或缓存表
CSV:数据文件就存储为csv格式,可以直接查看,常用于数据导出,临时存储的场景