Mysql技术内幕之笔记一

在启动实例时,mysql会根据配置文件参数启动数据库(Oracle如果没有配置文件会启动失败,mysql不会)
mysql会在下面位置查找配置文件位置
在这里插入图片描述
1.mysql体系结构
mysql体系结构
mysql由以下几个组件组成:
连接池组件
管理服务和工具组件
sql接口组件
查询分析器组件
优化器组件
缓冲组件
插件式存储引擎
物理文件
mysql区别于其他数据库最重要的特点是它的插件式的表存储引擎,存储引擎是基于表的,不是基于数据库

2.Innodb存储引擎(基于磁盘存储)
它支持事务,特点是行锁设计、支持外键、支持类似Oracle的非锁定读;
对于表中的数据的存储,该引擎采用聚集的方式,因此表的存储都是按照主键的顺序进行存放,如果在表定义时没有显式指定主键,该引擎会为每一行生成一个6字节的rowid,以此作为主键。下图所示为Innodb的体系架构:
在这里插入图片描述
2.1 Innodb存储引擎有很多内存块,这些内存块组成内存池,负责:
一。维护所有线程/进程需要访问的多个内部数据结构
二。缓存磁盘上的数据。方便快速读取

2.2 **后台线程主要作用是刷新内存池的数据、将已经修改的数据文件刷新到磁盘文件、同时保证在数据库发生异常后Innodb可以恢复正常运行状态。**包括:
**Master Thread:**核心后台线程,负责缓冲池的数据异步刷新到磁盘,保证数据一致性。
IO Thread:处理IO请求,可极大提高数据库性能
Pugre Thread: 回收已经使用并分配完的undo页。

2.3内存
2.3.1缓冲池
主要存储数据页和索引页
在这里插入图片描述
3.Innodb存储引擎特性
3.1 插入缓冲:它是物理页的组成部分,它的使用需要满足俩个条件:索引不是唯一的和索引是辅助索引可提高插入操作性能。它的数据结构是B+树;
3.2 两次写: 保证引擎数据页的可靠性。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值