MySQL
白天
夜间
首页
下载
阅读记录
书签管理
我的书签
添加书签
移除书签
1. 非分片
浏览
75
扫码
分享
2022-07-11 20:37:28
若有收获,就点个赞吧
0 人点赞
上一篇:
下一篇:
一、MySQL基础
一、SQL语法
DQL
1. 基础查询
2. 条件查询
3. 排序查询
4. 常见函数
5. 分组查询
6. 连接查询
7. 子查询
8. 联合查询
DML
1. 插入语句
2. 修改语句
3. 删除语句
DDL
库的管理
表的管理
数据类型
约束
TCL
视图
变量
存储过程
函数
流程控制结构
分支结构
循环结构
二、MySQL安装
行存储与列存储
MAC
docker 启动MySql
数据热备份
配置文件
MySQL卸载
三、MySQL逻辑架构
1.连接层
2.Server层(SQL处理层)
缓存
3.存储引擎层
表引擎的转换
四、MySQL目录与文件
1.bin目录
2.启动选项与参数
3.数据目录
1.InnoDB的表存储数据
2.MyISAM的表存储数据
3.日志文件
4.其他的数据文件
五、MySQL 中的系统库
1.performance_schema
查看最近执行失败的 SQL 语句
查看最近的事务执行信息
2.sys系统库
查看慢 SQL 语句慢在哪里
查询表的增删改查数据量和 I/O 耗时统计
3.information_schema
information_schema 表分类
Server 层的统计信息字典表
Server 层的表级别对象字典表
Server 层的混杂信息字典表
InnoDB 层的系统字典表
InnoDB 层的锁、事务、统计信息字典表
InnoDB 层的全文索引字典表
InnoDB 层的压缩相关字典表
查看索引列的信息
4.mysql 系统库
权限系统表
💼统计信息表
日志记录表
复制信息表
六、MySql集群
1. 主从复制架构
主从复制流程
主从复制配置
my.cnf
主从复制方式
半同步复制配置
2. 主主复制架构
主主复制配置
3. 级联复制架构
4. 双主级联架构
5. keepalived
二、表结构设计与数据类型优化
1. 范式与反范式设计
2. 字段数据类型优化
基本原则
整数类型
实数类型
字符串类型
日期与时间类型
3. 命名规范
三、高性能索引
语法
索引应用场景
索引结构
索引分类
索引优化
⚽️前缀索引
三星索引
四、MySQL性能优化
SQL性能分析
Explain 执行计划
查询截取分析
查询优化
慢查询日志分析
批量插入
Show profiles
全局查询日志
五、MySQL执行原理
一、🍉索引合并Index merge
1.Intersection交集合并
联合索引替代 交集索引合并
2.Union并集合并
3.Sort-Union 合并
二、连接查询
内连接与外连接
三、🍉查询成本
单表查询的成本
基于索引统计数据的成本计算
连接查询的成本
两表连接成本分析
多表连接成本分析
四、MySQL的查询重写规则
条件化简
外连接消除
子查询优化
MySQL 对 IN 子查询的优化
半连接semi-join
五、MySQL 查询的生命周期
六、InnoDB引擎底层解析
1. InnoDB存储结构与索引页结构
行格式
数据溢出
索引页格式
2. InnoDB表空间
独立表空间
系统表空间
InnoDB 数据字典(Data Dictionary Header)
3.InnoDB后台线程
4.InnoDB三大特性
1.🍉双写缓冲区/双写机制
2. 🍉Buffer Pool
free 链表的管理
缓存页的哈希处理
flush 链表的管理
LRU 链表的管理
刷新脏页到磁盘
多个Buffer Pool 实例
innodb_buffer_pool_chunk_size
Buffer Pool 的状态信息
3.🍉自适应哈希索引
七、事务与MVCC
一、redo 日志
redo 日志格式
Mini-Transaction
redo 日志写入过程
LSN(Log Sequence Number)
redo 日志刷盘时机
redo 日志刷盘类型
崩溃恢复
二、undo 日志
事务ID
undo日志格式
INSERT 操作对应的undo 日志
DELETE 操作对应的undo 日志
版本链
UPDATE 操作对应的undo 日志
三、MVCC
版本链与MVCC
ReadView
MVCC 下的幻读现象
四、其它
事务的隐式提交
分布式事务-XA协议
八、MySQL 锁机制
一、快照读与当前读
共享锁和独占锁
二、InnoDB中的锁
1.InnoDB表锁
2.意向锁
3.InnoDB行锁
记录锁Record Locks
间隙锁Gap Locks
临键锁next-key Locks
4.插入意向锁 Insert Intention Locks
5.隐式锁
三、锁的内存结构
四、死锁
MyCat
分库分表
数据切分
垂直切分
水平切分
配置文件
1. server.xml
2. schema.xml
1. 非分片
2. 分表
3. 分库
3. rule.xml
分布式ID生成
1. 文件方式获取全局序列号 不推荐
2. 数据库方式获取全局序列号 不推荐
3. 基于zookeeper生成全局序列
4. 基于时间戳生成全局序列
分片规则
1. 分片枚举
2. 固定分片Hash算法
3. 范围约定
4. 按日期(天)分片
5. 一致性Hash
全局表
ER分片表
Share join解决跨库join
命令行监控
Mycat-web
数据扩容
Mycat高可用
面试题
InnoDB 引擎的三大特性是什么?
InnoDB 一棵B 树可以存放多少行数据?
如何提高insert 的性能?
[SELECT *] 和[SELECT 全部字段]有何优缺点?
InnoDB 事务是如何通过日志来实现的?
有没有做MySQL读写分离?如何实现mysql的读写分离?MySQL主从复制原理的是啥?如何解决mysql主从同步的延时问题?
如何设计可以动态扩容缩容的分库分表方案?
RR级别下如何避免幻读
1.伪MVCC:RC、RR下的非阻塞读如何实现
2. next-key锁 Gap锁
暂无相关搜索结果!
让时间为你证明
分享,让知识传承更久远
×
文章二维码
×
手机扫一扫,轻松掌上读
文档下载
×
请下载您需要的格式的文档,随时随地,享受汲取知识的乐趣!
PDF
文档
EPUB
文档
MOBI
文档
书签列表
×
阅读记录
×
阅读进度:
0.00%
(
0/0
)
重置阅读进度
×
思维导图备注