# MySQL
## MySQL优化
暂时先放个脑图,后期会不断完善。。。
由于图片太大(5M),未能显示,建议下载看看,贼屌。
[图片地址](https://github.com/asdbex1078/MySQL/blob/master/MYSQL(5.7%E5%90%AB%E9%83%A8%E5%88%868.0%E6%96%B0%E7%89%B9%E6%80%A7).png)
## MySQL存储引擎
(下图概览,脑图已上传,[地址](https://github.com/asdbex1078/MySQL/tree/master/mysql-others/%E8%84%91%E5%9B%BE))
![innoDB概览](InnoDB.png)
### InnoDB
1. #### 从MySQL架构到InnoDB架构
1. [MySQL架构](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.0.MySQL%E6%9E%B6%E6%9E%84%E5%88%B0innoDB%E6%9E%B6%E6%9E%84.md#mysql%E4%BD%93%E7%B3%BB%E6%9E%B6%E6%9E%84)
2. [InnoDB架构](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.0.MySQL%E6%9E%B6%E6%9E%84%E5%88%B0innoDB%E6%9E%B6%E6%9E%84.md#innodb)
3. [InnoDB的多线程模型](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.0.MySQL%E6%9E%B6%E6%9E%84%E5%88%B0innoDB%E6%9E%B6%E6%9E%84.md#innodb%E7%9A%84%E4%B8%80%E4%B8%AA%E5%A4%9A%E7%BA%BF%E7%A8%8B%E6%A8%A1%E5%9E%8B)
- [Master Thread](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.0.MySQL%E6%9E%B6%E6%9E%84%E5%88%B0innoDB%E6%9E%B6%E6%9E%84.md#master-thread---%E6%A0%B8%E5%BF%83%E7%BA%BF%E7%A8%8B)
- [IO Thread](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.0.MySQL%E6%9E%B6%E6%9E%84%E5%88%B0innoDB%E6%9E%B6%E6%9E%84.md#io-thread)
- [Purge Thread](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.0.MySQL%E6%9E%B6%E6%9E%84%E5%88%B0innoDB%E6%9E%B6%E6%9E%84.md#purge-thread)
- [Page Cleaner Thread](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.0.MySQL%E6%9E%B6%E6%9E%84%E5%88%B0innoDB%E6%9E%B6%E6%9E%84.md#page-cleaner-thread)
2. [InnoDB简介](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.1.0.InnoDB%E2%80%94%E2%80%94%E7%AE%80%E4%BB%8B.md#innodb%E7%AE%80%E4%BB%8B)
3. InnoDB关键特性
- [Insert Buffer——插入缓冲区](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.1.1.InnoDB%E2%80%94%E2%80%94%E5%85%B3%E9%94%AE%E7%89%B9%E6%80%A7.md#insert-buffer---%E6%8F%92%E5%85%A5%E7%BC%93%E5%86%B2)
- [Double Write Buffer——双写缓冲区](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.1.1.InnoDB%E2%80%94%E2%80%94%E5%85%B3%E9%94%AE%E7%89%B9%E6%80%A7.md#double-write---%E4%B8%A4%E6%AC%A1%E5%86%99)
- [Adaptive Hash Index——自适应哈希索引](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.1.1.InnoDB%E2%80%94%E2%80%94%E5%85%B3%E9%94%AE%E7%89%B9%E6%80%A7.md#adaptive-hash-index---%E8%87%AA%E9%80%82%E5%BA%94%E5%93%88%E5%B8%8C%E7%B4%A2%E5%BC%95)
- [AIO——异步IO]()
- [刷新临近页](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.1.1.InnoDB%E2%80%94%E2%80%94%E5%85%B3%E9%94%AE%E7%89%B9%E6%80%A7.md#%E5%88%B7%E6%96%B0%E4%B8%B4%E8%BF%91%E9%A1%B5)
- [预读](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.1.1.InnoDB%E2%80%94%E2%80%94%E5%85%B3%E9%94%AE%E7%89%B9%E6%80%A7.md#%E9%A2%84%E8%AF%BB)
4. #### InnoDB内存结构
1. [缓冲池 - Buffer Pool](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.2.0.InnoDB%E5%86%85%E5%AD%98%E7%BB%93%E6%9E%84%E2%80%94%E2%80%94%E7%BC%93%E5%86%B2%E6%B1%A0.md#%E7%BC%93%E5%86%B2%E6%B1%A0)
- 为什么会出现
- 是什么
- 架构
- 关键概念 - 数据页
- 怎么做的
- 服务器的内存大小很重要
- 缓冲池中缓存的数据页的类型
- 怎么识别数据在哪个缓冲页中
- 缓冲池实例
- Buffer Pool如何应对高并发场景
- Buffer Pool的初始化
- LRU List
- Free List
- Flush List
- 总结
2. [日志缓冲区 - Log Buffer](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.2.1.InnoDB%E5%86%85%E5%AD%98%E7%BB%93%E6%9E%84%E2%80%94%E2%80%94log%20buffer.md#log-buffer)
- redo log buffer
- undo log buffer
3. [变更缓冲区 - Change Buffer](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.2.2.InnoDB%E5%86%85%E5%AD%98%E7%BB%93%E6%9E%84%E2%80%94%E2%80%94change%20buffer.md)
- 简介
- 什么时候合并到数据页
- 在架构中的位置
- 作用
- 组成部分
- 参数配置
- 监控变更缓冲区
- 其他信息
4. [额外内存池](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.2.3.InnoDB%E5%86%85%E5%AD%98%E7%BB%93%E6%9E%84%E2%80%94%E2%80%94%E9%A2%9D%E5%A4%96%E5%86%85%E5%AD%98%E6%B1%A0.md)
5. #### InnoDB磁盘结构
1. [页逻辑存储结构](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.3.0.InnoDB%E7%A3%81%E7%9B%98%E7%BB%93%E6%9E%84%E2%80%94%E2%80%94%E9%80%BB%E8%BE%91%E5%AD%98%E5%82%A8%E7%BB%93%E6%9E%84.md#innodb%E9%A1%B5%E9%80%BB%E8%BE%91%E5%AD%98%E5%82%A8%E7%BB%93%E6%9E%84)
- 页的结构
- 页中插入数据的过程
- COMPACT行格式
- Page Directory
- Page Header
- File Header
- File Trailer
- 总结
2. [表 - table](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.3.1.InnoDB%E7%A3%81%E7%9B%98%E7%BB%93%E6%9E%84%E2%80%94%E2%80%94%E8%A1%A8.md#%E8%A1%A8)
3. [索引 - index](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.3.2.InnoDB%E7%A3%81%E7%9B%98%E7%BB%93%E6%9E%84%E2%80%94%E2%80%94%E7%B4%A2%E5%BC%95.md#%E7%B4%A2%E5%BC%95)
- 聚簇索引和二级索引
- InnoDB索引的物理结构
- 排序索引的创建
4. [表空间 - TableSpaces](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.3.3.InnoDB%E7%A3%81%E7%9B%98%E7%BB%93%E6%9E%84%E2%80%94%E2%80%94%E8%A1%A8%E7%A9%BA%E9%97%B4.md#tablespaces)
- 系统表空间
- 每个表的表空间
- InnoDB内存中对 .ibd 文件的管理
- 数据字典和 .idb 文件的关系
- 通用表空间
- 创建通用表空间
- 撤销表空间
- 临时表空间
5. [数据字典 - Data Dictionary]()
6. #### MySQL文件
1. [参数文件](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.4.0.Mysql%E6%96%87%E4%BB%B6%E2%80%94%E2%80%94%E5%8F%82%E6%95%B0%E6%96%87%E4%BB%B6.md#%E5%8F%82%E6%95%B0%E6%96%87%E4%BB%B6)
- 作用
- 参数文件类型
- 参数类型
- 参数文件加载顺序
2. 日志文件
- [错误日志](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.4.1.0.Mysql%E6%96%87%E4%BB%B6%E2%80%94%E2%80%94%E6%97%A5%E5%BF%97%E6%96%87%E4%BB%B6%E4%B9%8B%E9%94%99%E8%AF%AF%E6%97%A5%E5%BF%97.md)
- [慢查询日志](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.4.1.1.Mysql%E6%96%87%E4%BB%B6%E2%80%94%E2%80%94%E6%97%A5%E5%BF%97%E6%96%87%E4%BB%B6%E4%B9%8B%E6%85%A2%E6%9F%A5%E8%AF%A2%E6%97%A5%E5%BF%97.md#%E6%85%A2%E6%9F%A5%E8%AF%A2%E6%97%A5%E5%BF%97---slow-query-log)
- 作用
- 查看慢日志是否开启 / 慢日志位置
- 满足什么条件会记录到慢日志中
- 测试慢日志记录
- mysqldumpslow的高级用法
- 慢查询日志的输出方式
- [二进制日志](https://github.com/asdbex1078/MySQL/blob/master/mysql-storage-engines/innodb/1.4.1.2.Mysql%E6%96%87%E4%BB%B6%E2%80%94%E2%80%94%E6%97%A5%E5%BF%97%E6%96%87%E4%BB%B6%E4%B9%8B%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%97%A5%E5%BF%97.md#%E4%BA%8C%E8%BF%9B%E5%88%B6%E6%97%A5%E5%BF%97)
- 简介
- 参数控制
- 二进制日志的切换
- 删除二进制日志文件
- 相关参数
- 查看二进制日志�
没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
收起资源包目录
MYSQL读书笔记整理 (212个子文件)
gh-md-toc.exe 6.1MB
1.6.6.redo log记录详细步骤.jpg 892KB
1.3.13.page directory 详细分组示意图.jpg 495KB
1.1.0.磁盘结构.jpg 479KB
1.6.7.XA过程.jpg 274KB
1.3.11.page directory简单分组示意图.jpg 270KB
1.3.12.page directory简单分组示意图.jpg 265KB
1.3.10.重新插入第2条记录.jpg 258KB
1.3.08.伪记录与真实记录-next record.jpg 257KB
1.3.01.InnoDB页结构示意图.jpg 248KB
1.3.07伪记录与真实记录.jpg 239KB
1.4.2.redo log buffer和 redo log.jpg 237KB
1.3.09.删除第二条记录后的示意图.jpg 235KB
1.2.3.change-buffer位置.jpg 231KB
1.3.02.记录插入页的过程.jpg 224KB
1.3.14.数据页之间双链表示意图.jpg 224KB
1.6.5.银行账户例子.jpg 221KB
1.5.6.二阶段加锁原则.jpg 212KB
1.3.05.插入4条记录后User Records.jpg 205KB
1.3.00.InnoDB逻辑存储结构.jpg 161KB
1.3.06.伪记录的行结构.jpg 161KB
1.3.04.page_demo表简化行格式图.jpg 145KB
1.3.03.InnoDB中数据的行格式.jpg 145KB
1.6.11.事务id落在区间段示意图.jpg 137KB
1.5.8.InnoDB中B+树的层次结构.jpg 135KB
1.5.18.线程C申请加写锁.jpg 125KB
1.6.1.带有保存点的扁平事务.jpg 123KB
1.6.8.MySQL对XA的支持.jpg 123KB
1.0.2.InnoDB详细架构图.jpg 120KB
1.5.15.复杂sql加锁分析.jpg 119KB
1.0.1.MySQL架构图.jpg 99KB
1.3.3.0.innodb数据行的逻辑存储结构.jpg 97KB
1.5.14.组合八:id无索引+RR.jpg 89KB
1.3.3.3.FSP_HEADER_SIZE记录信息.jpg 81KB
1.3.3.1.page0结构组成.jpg 74KB
1.5.12.组合四:id无索引+RC.jpg 72KB
1.5.11.组合三:id非唯一索引+RC.jpg 68KB
1.5.10.组合二:id唯一索引+RC.jpg 67KB
1.0.3.InnoDB架构及多线程模型.jpg 66KB
1.5.13.组合七:id非唯一索引+RR.jpg 65KB
1.5.9.组合一:id主键+RC.jpg 59KB
1.3.3.5.INode Entry结构.jpg 55KB
1.3.3.4.INode Page结构.jpg 50KB
1.4.10.InnoDB恢复的例子.jpg 46KB
1.4.0.redo Log写入过程.jpg 43KB
1.5.17.线程B申请加读锁.jpg 38KB
1.0.4.MySQL支持的存储引擎.jpg 36KB
面试题一——查看存储引擎.jpg 36KB
1.5.0.latch 和 lock 的区别.jpg 32KB
1.1.1.Double Write图示.jpg 30KB
1.5.20.死锁示意图2.jpg 30KB
1.3.3.2.Extent entry结构图.jpg 30KB
1.5.21.死锁示意图3.jpg 28KB
1.6.0.扁平事务.jpg 27KB
1.0.6.查看服务器正在执行的线程.jpg 13KB
面试题三——案例二explain情况.jpg 11KB
1.6.16.RR中事务id区间.jpg 9KB
1.6.12.根据区间判断是否可见1.jpg 9KB
1.6.14.RC事务区间例子2.jpg 9KB
MySQL面试题集锦.md 84KB
B.默认库-performance schema.md 55KB
1.3.0.InnoDB磁盘结构——逻辑存储结构.md 45KB
1.6.7.InnoDB事务——多版本并发控制.md 43KB
mysql架构——架构及介绍.md 38KB
1.2.0.InnoDB内存结构——缓冲池.md 31KB
1.5.3.InnoDB锁——lock之分类.md 30KB
1.4.1.2.Mysql文件——日志文件之二进制日志.md 28KB
1.3.3.InnoDB磁盘结构——表空间.md 28KB
1.4.4.2.Mysql文件——InnoDB Redo Log.md 24KB
1.1.1.InnoDB——关键特性.md 23KB
mysql面试常见sql-50题.md 19KB
README.md 19KB
1.6.8.0.InnoDB事务——分布式事务之XA.md 19KB
1.4.1.1.Mysql文件——日志文件之慢查询日志.md 18KB
1.5.4.InnoDB锁——lock之加锁案例分析.md 17KB
1.6.1.InnoDB事务——前提知识点.md 16KB
1.0.MySQL架构到innoDB架构.md 16KB
1.5.0.InnoDB锁——latch.md 15KB
MySQL优化——索引合并三个算法及案例.md 14KB
1.5.6.InnoDB锁——死锁.md 14KB
1.4.8.Mysql文件——bin log、redo log写入顺序-案例.md 12KB
1.4.4.3.Mysql文件——InnoDB Undo Log.md 11KB
1.6.3.InnoDB事务——事务的隔离级别.md 11KB
1.2.2.InnoDB内存结构——change buffer.md 11KB
1.6.0.InnoDB事务——概念及分类.md 11KB
C.mysql的锁机制.md 10KB
MySQL优化——优化INFORMATION_SCHEMA查询.md 9KB
1.3.2.InnoDB磁盘结构——索引.md 8KB
1.3.2.MySQL主从复制——使用amoeba实现mysql读写分离.md 8KB
1.4.1.MySQL分区——范围分区.md 8KB
1.1.0.InnoDB——简介.md 8KB
MySQL优化——子查询中外部内部条件不一致时优化器做出的优化.md 7KB
MySQL优化——ICP案例.md 7KB
1.5.5.InnoDB锁——lock之不同SQL加锁分析.md 7KB
1.4.5.Mysql文件——LSN.md 6KB
MySQL优化——监控MySQL内存使用情况.md 6KB
MySQL优化——通过EXPLAIN优化的例子.md 6KB
1.3.4.MySQL主从复制——安装配置 (2).md 5KB
MySQL优化——行大小被限制的例子.md 5KB
索引——NULL值对统计信息的影响.md 5KB
共 212 条
- 1
- 2
- 3
liushangzaibeijing
- 粉丝: 667
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0