第1章 安装或升级到MySQL 8 1
1.1引言 1
1.2使用YUM /APT安装MySQL 2
1.3使用RPM或DEB文件安装MySQL 8.0 9
1.4使用通用二进制文件在Linux系统上安装MySQL 12
1.5启动或停止MySQL 8的运行 16
1.6卸载MySQL 8 20
1.7用systemd管理MySQL服务器 22
1.8从MySQL 8.0降级 24
1.9升级到MySQL 8.0 29
1.10安装MySQL工具集 35
第2章 使用MySQL 37
2.1引言 38
2.2使用命令行客户端连接到MySQL 38
2.3创建数据库 40
2.4创建表 44
2.5插入、更新和删除行 49
2.6加载示例数据 52
2.7查询数据 55
2.8对结果排序 63
2.9对结果分组(聚合函数) 64
2.10创建用户 68
2.11授予和撤销用户的访问权限 70
2.12查询数据并保存到文件和表中 78
2.13将数据加载到表中 81
2.14表关联 82
2.15 存储过程 90
2.16函数 95
2.17触发器 98
2.18视图 100
2.19事件 102
2.20获取有关数据库和表的信息 104
第3章 使用MySQL(进阶) 110
3.1引言 110
3.2使用JSON 110
3.3公用表表达式(CTE) 116
3.4生成列(generated column) 122
3.5窗口函数 124
第4章 配置MySQL 129
4.1引言 129
4.2使用配置文件 130
4.3使用全局变量和会话变量 131
4.4在启动脚本中使用参数 132
4.5配置参数 132
4.6更改数据目录 135
第5章 事务 137
5.1引言 137
5.2执行事务 138
5.3使用保存点 140
5.4隔离级别 142
5.5锁 147
第6章 二进制日志 153
6.1引言 153
6.2使用二进制日志 154
6.3二进制日志的格式 159
6.4从二进制日志中提取语句 161
6.5忽略要写入二进制日志的数据库 173
6.6迁移二进制日志 174
第7章 备份 177
7.1引言 177
7.2使用mysqldump进行备份 178
7.3使用mysqlpump进行备份 182
7.4使用mydumper进行备份 185
7.5使用普通文件进行备份 191
7.6使用XtraBackup进行备份 192
7.7锁定实例进行备份 195
7.8使用二进制日志进行备份 195
第8章 恢复数据 197
8.1引言 197
8.2从mysqldump和mysqlpump中恢复 197
8.3使用myloader从mydumper中恢复 198
8.4从普通文件备份中恢复 200
8.5执行时间点恢复 201
第9章 复制 204
9.1引言 204
9.2准备复制 205
9.3设置主主复制 212
9.4设置多源复制 213
9.5设置复制筛选器 220
9.6将从库由主从复制切换到链式复制 222
9.7将从库由链式复制切换到主从复制 227
9.8设置延迟复制 231
9.9设置GTID复制 234
9.10设置半同步复制 238
第10章 表维护 243
10.1引言 243
10.2安装Percona工具包 244
10.3修改表结构 246
10.4在数据库之间移动表 248
10.5使用在线模式更改工具修改表 250
10.6归档表 255
10.7克隆表 257
10.8分区修剪和指定 269
10.9管理分区 273
10.10分区信息 276
10.11有效地管理生存时间和软删除行 281
第11章 管理表空间 289
11.1引言 289
11.2更改InnoDB REDO日志文件的数量或大小 292
11.3调整InnoDB系统的表空间大小 294
11.4在数据目录之外创建独立表空间 298
11.5将独立表空间复制到另一个实例 299
11.6管理UNDO表空间 307
11.7管理通用表空间 311
11.8压缩InnoDB表 315
第12章 日志管理 320
12.1引言 320
12.2管理错误日志 320
12.3管理通用查询日志和慢查询日志 328
12.4管理二进制日志 335
第13章 性能调优 338
13.1引言 338
13.2 explain计划 339
13.3基准查询和服务器 345
13.4添加索引 347
13.5不可见索引 353
13.6降序索引 355
13.7使用pt-query-digest分析慢查询 358
13.8优化数据类型 364
13.9删除重复和冗余索引 366
13.10检查索引的使用情况 374
13.11控制查询优化器 375
13.12使用索引提示(hint ) 389
13.13使用生成列为JSON建立索引 392
13.14使用资源组 395
13.15 使用performance schema 398
13.16使用sys schema 405
第14章 安全 413
14.1引言 413
14.2安全安装 413
14.3限定网络和用户 417
14.4使用mysql_ config_ editor进行无密码认证 418
14.5重置root密码 421
14.6使用X509设置加密连接 425
14.7设置SSL复制 428