简介
目录
前言
第一部分 MariaDB与MySQL的新特性
第1章 MariaDB 10.5的新特性2
1.1 MariaDB概述2
1.2 MariaDB 10.5与MySQL 8.0的
比较3
1.2.1 存储引擎3
1.2.2 扩展和新功能4
1.3 如何将MySQL迁移至
MariaDB中5
1.4 MariaDB 10.5新特性详解7
1.4.1 客户端连接层的改进7
1.4.2 服务层的改进24
1.4.3 InnoDB存储引擎层的改进61
第2章 MySQL 8.0的新特性70
2.1 MySQL 8.0概述70
2.2 MySQL 8.0新特性详解70
2.2.1 性能提升73
2.2.2 客户端连接层的改进74
2.2.3 服务层的改进81
2.2.4 优化器的改进86
2.2.5 同步复制的改进104
2.2.6 InnoDB存储引擎层的改进110
2.2.7 通过pt-upgrade工具检测SQL
语法的兼容性122
第二部分 故障诊断与性能优化
第3章 故障诊断126
3.1 影响MySQL性能的因素126
3.2 系统性能评估标准127
3.2.1 影响Linux服务器性能的
因素128
3.2.2 系统性能评估指标129
3.2.3 开源监控和评估工具131
3.3 故障与处理136
3.3.1 基于pt-online-schema-change
修改表结构是否安全136
3.3.2 修改外键时,pt-osc内部是
如何处理的138
3.3.3 删除大表的小技巧139
3.3.4 重构Percona pt-archiver:轻松
归档大表数据140
3.3.5 Percona pt-kill改造版(PHP):
慢SQL报警及扼杀利器143
3.3.6 自适应Hash索引引起的
MySQL崩溃与重启146
3.3.7 诊断事务量突增的原因148
3.3.8 谨慎设置binlog_format=
MIXED150
3.3.9 MySQL故障切换之事件
调度器的注意事项155
3.3.10 误操作的恢复158
3.3.11 快速恢复二进制日志161
第4章 处理同步复制报错故障162
4.1 常见的3种故障162
4.1.1 在主库上删除一条记录导致
的故障163
4.1.2 主键重复164
4.1.3 在主库上更新了一条记录,
在从库上却找不到165
4.2 特殊情况:从库的中继日志受损166
4.3 多台从库中存在重复的server-id168
4.4 避免在主库上执行大事务169
4.5 slave_exec_mode参数可自动
处理同步复制错误169
4.6 如何验证主从数据是否一致171
4.7 binlog_ignore_db引起的同步
复制故障174
4.8 在从库上恢复指定表的简要
方法176
4.9 如何彻底清除从库的同步信息177
第5章 性能调优179
5.1 表的设计规范179
5.1.1 表的设计目标179
5.1.2 数据库三范式的定义180
5.2 字段类型的选取185
5.2.1 数值类型185
5.2.2 字符类型191
5.2.3 时间类型194
5.3 采用合适的锁机制201
5.3.1 表锁201
5.3.2 行锁203
5.3.3 行锁转表锁204
5.3.4 死锁205
5.4 选择合适的事务隔离级别207
5.4.1 事务的概念207
5.4.2 事务的实现208
5.4.3 事务的隔离级别210
5.5 SQL优化与合理利用索引218
5.5.1 慢查询的定位方法218
5.5.2 SQL优化案例分析219
5.5.3 合理使用索引230
5.6 my.cnf配置文件调优239
5.6.1 per_thread_buffers参数调优239
5.6.2 global_buffers参数调优241
5.6.3 查询缓存在不同环境下的
使用242
5.7 MySQL设计、开发和操作规范243
5.8 SQL自助上线平台254
5.8.1 简介254
5.8.2 审核规则256
第6章 备份与恢复258
6.1 冷备份259
6.2 逻辑备份259
6.2.1 mysqldump中增加了重要参数
--dump-slave260
6.2.2 取代mysqldump的新工具
mydumper261
6.3 热备份与恢复265
6.3.1 XtraBackup的工作原理265
6.3.2 使用Percona XtraBackup 8.0
备份MySQL 8.0269
6.3.3 MariaDB热备份工具
mariabackup270
第三部分 高可用架构
第7章 高可用架构集群管理272
7.1 MaxScale高可用架构273
7.1.1 功能概述273
7.1.2 搭建MaxScale高可用架构274
7.1.3 模拟故障转移279
7.2 MySQL组复制高可用架构282
7.2.1 组复制的工作原理283
7.2.2 组复制的特性和注意事项288
7.2.3 组复制的使用方法289
第8章 MySQL架构演进:一主
多从、读写分离294
8.1 实现读写分离的两种方式295
8.2 主从复制延迟的计算方法297
8.3 HAProxy感知MySQL主从同步
延迟300
8.4 搭建读写分离MariaDB MaxScale
架构307
8.4.1 配置环境及安装介绍307
8.4.2 基于连接方式的测试311
8.4.3 基于语句方式(SQL解析)
的测试311
8.4.4 MaxScale延迟检测312
第9章 TSpider分库分表的搭建与
管理316
9.1 TSpider简介317
9.1.1 TSpider的使用场景317
9.1.2 TSpider的取模扩容问题324
9.1.3 TSpider负载均衡架构设计325
9.2 Tdbctl详解325
9.2.1 安装Tdbctl组件326
9.2.2 Tdbctl的重要参数说明327
9.2.3 Tdbctl的配置管理327
9.2.4 Tdbctl组件的验证327
第四部分 监控管理平台
第10章 MySQL监控管理平台330
10.1 图形可视化监控工具MySQL
Monitor331
10.1.1 环境搭建334
10.1.2 搭建MySQL Monitor工具334
10.2 图形化显示慢日志的工具MySQL
Slowquery336
10.2.1 环境搭建337
10.2.2 MySQL Slowquery工具的
配置337
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问