1 MySQL基础
1.1 关系型数据库介绍
1.2 MySQL连接
1.3 引擎类型及区别
1.4 MySQL数据类型
2 查看数据库基本信息
2.1 基本语句
2.2 其他补充语句
3 对表的增(INSERT)、删(DELETE)、查(SELECT)、改(UPDATE)
3.1 查询数据(SELECT)
3.2 更新数据(UPDATE)
3.3 增加数据(INSERT)
3.4 删除数据(DELETE)
3.5 扩展知识
4 复杂XXXX
5 常用函数
5.1 字符串函数
5.2 聚合函数
6 子查询和联结
6.1 子查询
6.2 联结
7 组合查询和全文本搜索
8 视图和存储过程
8.1 视图
8.2 存储过程
9 游标、触发器和事务管理
9.1 游标
9.2 触发器
9.3 事务
10 索引和性能分析
10.1 索引
11 MySQL高级知识
11.1 MySQL锁机制介绍
12 MySQL进阶知识
13 MySQL维护、安全管理和其他
13.1 MySQL关键字和保留字(5.7版本)

引擎类型及区别

2017-12-23 09:19:00
linefo
609
最后编辑:linefo 于 2018-02-11 09:04:37



刚接触MySQL的话,看这里可能意义不大。


【前言】

不同的数据表,可以使用不同的MySQL引擎,区别主要是在支持的功能上。

最常用的是InnoDB和MyISAM两种引擎,其他还有MEMORY和CSV等。

仅从速度而言,InnoDB更适用于写操作较多的表,而MyISAM更适用于读操作更多的表。

但InnoDB已经成为默认标准,所以如果没有特殊情况请使用InnoDB。


InnoDB:


MySQL的默认引擎。

【功能说明

存储限制:64TB

MVCC:支持(多版本并发控制技术,后期补)

锁粒度:行

事务:支持

B-tree索引:支持

T-tree索引:支持

聚合索引:支持

全文搜索索引:支持(在5.6.4版本以后支持)

哈希索引:不支持()

索引缓存:支持

集群数据库:不支持

备份/恢复时间点:支持

地理空间数据类型:支持

地理空间索引:支持(在5.7.5版本以后支持)

数据压缩:支持()

复制支持:支持(在服务器中实现,而不是在存储引擎)

数据缓存:支持

缓存查询:支持

加密数据:支持(在服务器中实现,而不是在存储引擎)

外键:支持

更新统计数据的数据字典:支持



MyISAM:


MySQL自身的数据库里,有许多使用MyISAM引擎的表。

【功能说明】

存储限制:256TB

MVCC:支持


锁粒度:表

事务:支持

B-tree索引:支持

T-tree索引:支持

聚合索引:支持

全文搜索索引:支持

哈希索引:支持

索引缓存:支持

集群数据库:支持

备份/恢复时间点:支持在服务器中实现,而不是在存储引擎

地理空间数据类型:支持

地理空间索引:支持

数据压缩:支持()

复制支持:支持在服务器中实现,而不是在存储引擎

数据缓存:支持

缓存查询:支持

加密数据:支持在服务器中实现[通过加密功能],在5.7版本以后可实现数据表空间加密

外键:支持

更新统计数据的数据字典:支持


MEMORY:


内存存储引擎

【功能支持】

存储限制:内存
MVCC:不支持

锁粒度:表

事务:不支持

B-tree索引:支持

T-tree索引:不支持

聚合索引:不支持

全文搜索索引:不支持

哈希索引:支持

索引缓存:N/一个

集群数据库:不支持

备份/恢复时间点:支持(在服务器中实现,而不是在存储引擎)

地理空间数据类型:不支持

地理空间索引:不支持

数据压缩:不支持

复制支持:有限的

数据缓存:N/一个

缓存查询:支持

加密数据:支持(在服务器中实现[通过加密功能],在5.7版本以后可实现数据表空间加密)

外键:不支持

更新统计数据的数据字典:支持


其他引擎后面再介绍