├── 第1篇 MySQL基础(不易出题,且有很多谬误,不采纳) │   ├── Text │   │   └── chapter1.html │   ├── 第1章 数据库概述 │   │   ├── 1.1 数据库的定义 │   │   ├── 1.2 数据库的发展 │   │   ├── 1.3 本章总结 │   │   └── Text │   ├── 第2章 数据库技术 │   │   ├── 2.1 数据库系统 │   │   ├── 2.2 SQL语言 │   │   ├── 2.3 数据库访问技术 │   │   ├── 2.4 本章总结 │   │   └── Text │   └── 第3章 MySQL数据库 │   ├── 3.1 MySQL三大范式 │   ├── 3.2 MySQL存储引擎 │   ├── 3.3 本章总结 │   └── Text ├── 第2篇 环境搭建(不易出题,不采纳) │   ├── Text │   │   └── chapter41.html │   ├── 第4章 安装三大操作系统 │   │   ├── 4.1 安装VMware虚拟机 │   │   ├── 4.2 安装Windows操作系统 │   │   ├── 4.3 安装Mac OS X操作系统 │   │   ├── 4.4 安装CentOS操作系统 │   │   ├── 4.5 本章总结 │   │   └── Text │   ├── 第5章 服务器基础配置 │   │   ├── 5.1 配置CentOS 6.8服务器环境 │   │   ├── 5.2 添加mysql用户身份 │   │   ├── 5.3 本章总结 │   │   └── Text │   └── 第6章 搭建MySQL环境 │   ├── 6.1 基于MSI文件安装Windows版本的MySQL │   ├── 6.2 基于ZIP文件安装Windows版本的MySQL │   ├── 6.3 基于DMG文件安装Mac OS X版本的MySQL │   ├── 6.4 基于GZ文件安装Mac OS X版本的MySQL │   ├── 6.5 基于RPM文件安装CentOS版本的MySQL │   ├── 6.6 基于源码安装CentOS版本的MySQL │   ├── 6.7 遇到的问题和解决方案 │   ├── 6.8 本章总结 │   └── Text ├── 第3篇 MySQL开发 │   ├── Text │   │   └── chapter109.html │   ├── 第10章 MySQL运算符(基础知识,采纳,建议出题人自行分拆) │   │   ├── 10.1 算术运算符 │   │   ├── 10.2 比较运算符 │   │   ├── 10.3 逻辑运算符 │   │   ├── 10.4 位运算符 │   │   ├── 10.5 运算符的优先级 │   │   ├── 10.6 本章总结 │   │   └── Text │   ├── 第11章 MySQL函数(基础知识,采纳) │   │   ├── 11.1 MySQL函数简介 │   │   ├── 11.10 JSON函数 │   │   ├── 11.11 窗口函数 │   │   ├── 11.12 MySQL的其他函数 │   │   ├── 11.13 本章总结 │   │   ├── 11.2 数学函数 │   │   ├── 11.3 字符串函数 │   │   ├── 11.4 日期和时间函数 │   │   ├── 11.5 流程处理函数 │   │   ├── 11.6 加密与解密函数 │   │   ├── 11.7 聚合函数 │   │   ├── 11.8 获取MySQL信息函数 │   │   ├── 11.9 加锁与解锁函数 │   │   └── Text │   ├── 第12章 MySQL数据变更(重要的初中阶知识,采纳) │   │   ├── 12.1 数据插入 │   │   ├── 12.2 数据更新 │   │   ├── 12.3 数据删除 │   │   ├── 12.4 本章总结 │   │   └── Text │   ├── 第13章 MySQL数据查询(重要的初中阶知识,采纳,每节至少一题) │   │   ├── 13.1 数据准备 │   │   ├── 13.10 本章总结 │   │   ├── 13.2 SELECT查询语句 │   │   ├── 13.3 WHERE条件语句 │   │   ├── 13.4 数据聚合查询 │   │   ├── 13.5 JOIN语句 │   │   ├── 13.6 子查询语句 │   │   ├── 13.7 UNION联合语句 │   │   ├── 13.8 使用别名查询数据 │   │   ├── 13.9 使用正则表达式查询数据 │   │   └── Text │   ├── 第14章 MySQL索引(重要的中高阶知识,采纳) │   │   ├── 14.1 索引简介 │   │   ├── 14.2 索引的使用场景 │   │   ├── 14.3 创建数据表时创建索引 │   │   ├── 14.4 为已有数据表添加索引 │   │   ├── 14.5 删除索引 │   │   ├── 14.6 隐藏索引 │   │   ├── 14.7 降序索引 │   │   ├── 14.8 函数索引 │   │   ├── 14.9 本章总结 │   │   └── Text │   ├── 第15章 MySQL视图(重要的中高阶知识,采纳) │   │   ├── 15.1 视图概述 │   │   ├── 15.2 创建视图 │   │   ├── 15.3 查看视图 │   │   ├── 15.4 修改视图的结构 │   │   ├── 15.5 更新视图的数据 │   │   ├── 15.6 删除视图 │   │   ├── 15.7 本章总结 │   │   └── Text │   ├── 第16章 存储过程和函数(重要的中高阶知识,采纳) │   │   ├── 16.1 存储过程和函数简介 │   │   ├── 16.10 定义条件和处理程序案例 │   │   ├── 16.11 MySQL中游标的使用 │   │   ├── 16.12 MySQL中游标的使用案例 │   │   ├── 16.13 MySQL中控制流程的使用 │   │   ├── 16.14 本章总结 │   │   ├── 16.2 创建存储过程和函数 │   │   ├── 16.3 查看存储过程和函数 │   │   ├── 16.4 修改存储过程和函数 │   │   ├── 16.5 调用存储过程和函数 │   │   ├── 16.6 删除存储过程和函数 │   │   ├── 16.7 MySQL中使用变量 │   │   ├── 16.8 MySQL中使用变量案例 │   │   ├── 16.9 定义条件和处理程序 │   │   └── Text │   ├── 第17章 MySQL触发器(重要的中高阶知识,采纳) │   │   ├── 17.1 创建触发器 │   │   ├── 17.2 查看触发器 │   │   ├── 17.3 删除触发器 │   │   ├── 17.4 本章小结 │   │   └── Text │   ├── 第18章 MySQL分区(重要的高阶知识,采纳,建议适当合并) │   │   ├── 18.1 分区介绍 │   │   ├── 18.2 RANGE分区 │   │   ├── 18.3 LIST分区 │   │   ├── 18.4 COLUMNS分区 │   │   ├── 18.5 HASH分区 │   │   ├── 18.6 KEY分区 │   │   ├── 18.7 子分区 │   │   ├── 18.8 分区中的NULL值处理 │   │   ├── 18.9 本章总结 │   │   └── Text │   ├── 第19章 MySQL公用表表达式和生成列(重要的中阶知识,采纳) │   │   ├── 19.1 公用表表达式 │   │   ├── 19.2 生成列 │   │   ├── 19.3 本章总结 │   │   └── Text │   ├── 第7章 MySQL操作数据库(重要的初中阶知识,采纳) │   │   ├── 7.1 创建数据库 │   │   ├── 7.2 查看数据库 │   │   ├── 7.3 修改数据库名称 │   │   ├── 7.4 数据库编码 │   │   ├── 7.5 删除数据库 │   │   ├── 7.6 本章总结 │   │   └── Text │   ├── 第8章 MySQL操作数据表(重要的初中阶知识,采纳) │   │   ├── 8.1 创建数据表 │   │   ├── 8.2 查看数据表结构 │   │   ├── 8.3 修改数据表 │   │   ├── 8.4 删除数据表 │   │   ├── 8.5 MySQL中的临时表 │   │   ├── 8.6 本章总结 │   │   └── Text │   └── 第9章 MySQL数据类型(初阶知识,采纳) │   ├── 9.1 数值类型 │   ├── 9.2 日期和时间类型 │   ├── 9.3 文本字符串类型 │   ├── 9.4 二进制字符串类型 │   ├── 9.5 本章总结 │   └── Text ├── 第4篇 MySQL优化 │   ├── Text │   │   └── chapter577.html │   ├── 第20章 MySQL查询优化(重要的中高阶知识,采纳) │   │   ├── 20.1 SHOW STATUS语句解析 │   │   ├── 20.2 EXPLAIN语句解析 │   │   ├── 20.3 SHOW PROFILE语句解析 │   │   ├── 20.4 pt-query-digest分析查询 │   │   ├── 20.5 优化子查询 │   │   ├── 20.6 本章总结 │   │   └── Text │   ├── 第21章 MySQL索引优化(重要的高阶知识,采纳) │   │   ├── 21.1 索引的类型 │   │   ├── 21.2 使用索引的场景 │   │   ├── 21.3 无法使用索引的场景 │   │   ├── 21.4 使用索引提示 │   │   ├── 21.5 使用生成列为JSON建立索引 │   │   ├── 21.6 本章总结 │   │   └── Text │   ├── 第22章 SQL语句优化(重要的高阶知识,采纳) │   │   ├── 22.1 嵌套查询的优化 │   │   ├── 22.2 OR条件语句的优化 │   │   ├── 22.3 ORDER BY语句的优化 │   │   ├── 22.4 GROUP BY语句的优化 │   │   ├── 22.5 分页查询的优化 │   │   ├── 22.6 插入数据的优化 │   │   ├── 22.7 删除数据的优化 │   │   ├── 22.8 本章总结 │   │   └── Text │   ├── 第23章 数据库优化(重要的中高阶知识,采纳) │   │   ├── 23.1 优化数据类型 │   │   ├── 23.2 删除重复索引和冗余索引 │   │   ├── 23.3 反范式化设计 │   │   ├── 23.4 增加中间表 │   │   ├── 23.5 分析数据表 │   │   ├── 23.6 检查数据表 │   │   ├── 23.7 优化数据表 │   │   ├── 23.8 拆分数据表 │   │   ├── 23.9 本章总结 │   │   └── Text │   ├── 第24章 MySQL服务器优化(中高阶知识,采纳) │   │   ├── 24.1 MySQL服务器硬件的优化 │   │   ├── 24.2 MySQL配置项的优化 │   │   ├── 24.3 本章总结 │   │   └── Text │   ├── 第25章 应用程序优化(中高阶知识,采纳) │   │   ├── 25.1 复用数据库连接 │   │   ├── 25.2 减少数据访问 │   │   ├── 25.3 开启查询缓存 │   │   ├── 25.4 使用外部缓存 │   │   ├── 25.5 使用分布式MySQL架构 │   │   ├── 25.6 本章总结 │   │   └── Text │   └── 第26章 MySQL的其他优化选项(中高阶知识,采纳) │   ├── 26.1 使用performance_schema数据库分析MySQL │   ├── 26.2 使用sys数据库分析MySQL │   ├── 26.3 MySQL 8.x中的资源组 │   ├── 26.4 本章总结 │   └── Text ├── 第5篇 MySQL运维 │   ├── Text │   │   └── chapter676.html(初阶知识,采纳) │   ├── 第27章 MySQL命令行工具 │   │   ├── 27.1 查看MySQL命令 │   │   ├── 27.10 本章总结 │   │   ├── 27.2 mysql命令 │   │   ├── 27.3 mysqladmin命令 │   │   ├── 27.4 myisampack命令 │   │   ├── 27.5 mysqlbinlog命令 │   │   ├── 27.6 mysqlcheck命令 │   │   ├── 27.7 mysqlshow命令 │   │   ├── 27.8 mysqldump命令 │   │   ├── 27.9 mysqlimport命令 │   │   └── Text │   ├── 第28章 MySQL日志(中阶知识,采纳) │   │   ├── 28.1 查询日志 │   │   ├── 28.2 慢查询日志 │   │   ├── 28.3 错误日志 │   │   ├── 28.4 二进制日志 │   │   ├── 28.5 本章总结 │   │   └── Text │   ├── 第29章 数据备份与恢复(重要的初中阶知识,采纳) │   │   ├── 29.1 基于mysqldump备份并恢复数据 │   │   ├── 29.10 导入数据 │   │   ├── 29.11 遇到的问题和解决方案 │   │   ├── 29.12 本章总结 │   │   ├── 29.2 基于mysqlpump备份并恢复数据 │   │   ├── 29.3 基于mydumper备份并恢复数据 │   │   ├── 29.4 基于mysqlhotcopy备份并恢复数据 │   │   ├── 29.5 基于xtrabackup备份并恢复数据 │   │   ├── 29.6 数据备份与恢复案例 │   │   ├── 29.7 MySQL灾难恢复 │   │   ├── 29.8 实现数据库的自动备份 │   │   ├── 29.9 导出数据 │   │   └── Text │   └── 第30章 MySQL账户管理(重要的初中阶知识,采纳) │   ├── 30.1 MySQL中的权限表 │   ├── 30.10 MySQL 8.x版本中的账户管理 │   ├── 30.11 本章总结 │   ├── 30.2 创建普通用户 │   ├── 30.3 为用户授权 │   ├── 30.4 查看用户权限 │   ├── 30.5 修改用户权限 │   ├── 30.6 撤销用户权限 │   ├── 30.7 修改用户密码 │   ├── 30.8 删除用户 │   ├── 30.9 限制用户使用资源 │   └── Text ├── 第6篇 MySQL架构 │   ├── Text │   │   └── chapter793.html │   ├── 第31章 MySQL复制(中高阶知识,采纳) │   │   ├── 31.1 搭建MySQL主从复制环境 │   │   ├── 31.10 基于半同步模式搭建MySQL主从复制环境 │   │   ├── 31.11 本章总结 │   │   ├── 31.2 搭建MySQL主主复制环境 │   │   ├── 31.3 添加MySQL从库 │   │   ├── 31.4 切换主从复制到链式复制 │   │   ├── 31.5 切换链式复制到主从复制 │   │   ├── 31.6 搭建MySQL多源复制环境 │   │   ├── 31.7 添加复制过滤器 │   │   ├── 31.8 设置延迟复制 │   │   ├── 31.9 基于GTID搭建MySQL主从复制环境 │   │   └── Text │   ├── 第32章 MySQL读写分离(中高阶知识,采纳) │   │   ├── 32.1 基于MySQL Proxy实现读写分离 │   │   ├── 32.2 基于Atlas实现读写分离 │   │   ├── 32.3 基于ProxySQL实现读写分离 │   │   ├── 32.4 基于Amoeba实现读写分离 │   │   ├── 32.5 基于Mycat实现读写分离 │   │   ├── 32.6 本章总结 │   │   └── Text │   └── 第33章 MySQL HA高可用架构(中高阶知识,采纳) │   ├── 33.1 基于Keepalived搭建MySQL高可用环境 │   ├── 33.2 基于HAProxy搭建Mycat高可用环境 │   ├── 33.3 基于Keepalived搭建HAProxy高可用环境 │   ├── 33.4 本章总结 │   └── Text