数据库和数据库实例的区别:
数据库是文件的集合,是依照某种数据模型组织起来并存放于二级存储器中的数据集合;
数据库实例是程序,是位于用户与操作系统之间的一层数据管理软件;
Mysql组成部分
- 连接池组件
- 管理服务和工具组件
- SQL接口组件
- 查询分析器组件
- 优化器组件
- 缓冲组件
- 插件式存储引擎(Mysql的重要特点)
- 物理文件
Mysql存储引擎
InnoDB存储引擎
目标:面向在线事务处理OLTP的应用。
特点:行级锁,外键,非锁定读。
InnoDB将数据存放在表空间内。InnoDB通过MVCC多版本控制来获取高并发性。
MyISAM存储引擎
目标:面向OLAP的应用。
特点:不支持事务,表锁设计,缓冲池只存放索引文件,不存放数据(索引和数据分开)。
NDB存储引擎
特点:数据全部放在内存中,主键查找速度极快;NDB的连接操作是在数据库层操作的,不是存储引擎层,因此复杂的join会有大量的网络开销。
Memory存储引擎
特点:数据存储在内存中,适合存储临时表,使用哈希索引,而非B+树索引;只支持表锁,并且并发性很差;
网友评论