全面理解mysql体系架构
2026-01-06 10:19:48 0 举报
AI智能生成
MySQL是一款流行的开源关系型数据库管理系统,其体系架构设计以模块化为特点,采用多层次的组件结构。
作者其他创作
大纲/内容
体系结构与存储引擎
server层
链接器
管理链接与权限验证
wait_timeout:默认8小时,链接时长
查询缓存
mysql8.0删除了
原因:对于频繁更新的数据,命中率低,两个关键参数:query_cahce_size:设置缓存大小
query_cache_type:
0:不使用缓存
1:查询都使用缓存,除了显示指定了sql_no_cache的查询
2:按需加缓存,通过sql_cache显示指定用缓存。
query_cache_type:
0:不使用缓存
1:查询都使用缓存,除了显示指定了sql_no_cache的查询
2:按需加缓存,通过sql_cache显示指定用缓存。
分析器
词法与语义分析:从information_scheme表中读取表结构,语法分析sql语句是否正确
优化器
决定mysql采用哪种最优方案执行
执行器
调用存储引擎层接口,获取数据返回结果集
存储引擎层
innoDB
mysql5.5.5版本默认存储引擎
innodb三大特性
插入缓冲(bufferpool)
将普通索引的插入先写入chagebuffer,目的是让chage_buffer与普通索引结合,将多个插入合并到一个操作中,最终的目的是提升io效率,将随机io变为顺序io
两次写
保证写入安全:防止mysql宕机,redo log物理页损坏的情况下,可以通过两次写机制,恢复页,从而恢复数据。
自适应hash索引
监控索引的搜索,如果可以通过建立hash索引得到优化,那么msyql会自动完成这件事,提升查询效率。
特点
支持事务,行级锁,mvcc多版本并发控制,并发性高,索引与数据都在.idb文件中,会缓存在内存里。
MyISAM
特点
不支持事务,表锁,mysql8.0后被废弃了,并发低,资源利用率也低。数据文件在.MYD文件里,索引在.MYI文件里。只缓存索引文件
Memory
特点
子主题表中的数据都放在内存中,不落地,支持Hash与btree索引,数据安全性不高,读取数据快。
0 条评论
下一页