网站首页 软件下载 游戏下载 翻译软件 电子书下载 电影下载 电视剧下载 教程攻略
书名 | MySQL高可用实践 |
分类 | |
作者 | 王雪迎 |
出版社 | 清华大学出版社 |
下载 | ![]() |
简介 | 内容推荐 MySQL数据库是现代软件系统基础应用的核心组成部分,如何保持MySQL的高可用性在系统应用中就变得极为重要。本书从复制、中间件、集群、存储、优化五个方面介绍MySQL高可用技术。本书分为16章,内容包括异步复制、半同步复制、GTID与复制、复制拓扑与性能、延迟复制与部分复制、组复制、MySQLRouter、MySQLFabric、MMM、MHA、Keepalived+LVS、Heartbeat+HAProxy、InnoDBCluster、GaleraCluster、DRBD、优化案例等。本书适合DBA、系统管理运维、应用程序开发、架构师等MySQL相关技术人员作为参考书,也适合作为高等院校和培训学校相关专业的技术培训教材。 作者简介 王雪迎 ,毕业于中国地质大学计算机专业,不错工程师,20年数据库、数据仓库相关技术工作经验。先后供职于北京现代商业信息技术有限公司、北京在线九州信息技术服务有限公司、华北计算技术研究所、北京优贝在线网络科技有限公司,担任DBA、数据架构师等职位。著有图书《Hadoop构建数据仓库实践》《HAWQ数据仓库与数据挖掘实战》《SQL机器学习库MADlib技术解析》。 目录 章异步复制1 1.1MySQL异步复制简介1 1.1.1复制的用途1 1.1.2复制如何工作2 1.1.3两阶段提交6 1.2搭建实验环境8 1.2.1实验环境说明8 1.2.2安装MySQL8 1.3配置异步复制12 1.3.1空库12 1.3.2脱机16 1.3.3联机17 1.4小结20 第2章半同步复制21 2.1MySQL半同步复制简介21 2.2性能提升22 2.2.1ACK异步化22 2.2.2控制从库反馈的数量24 2.2.3二进制日志互斥锁的改进25 2.3数据一致性26 2.3.1rpl_semi_sync_master_wait_point配置26 2.3.2sync_binlog配置28 2.3.3sync_relay_log配置30 2.4管理接口32 2.5配置半同步复制32 2.5.1安装插件32 2.5.2启用半同步复制34 2.5.3监控半同步复制35 2.6测试37 2.6.1正常提交事务37 2.6.2回滚事务38 2.6.3rpl_semi_sync_master_wait_no_slave与从库数量40 2.7小结44 第3章GTID与复制45 3.1GTID简介45 3.1.1什么是GTID45 3.1.2GTID的格式与存储46 3.2GTID生命周期54 3.2.1典型事务的GTID生命周期54 3.2.2GTID分配57 3.2.3gtid_next系统变量58 3.2.4gtid_purged系统变量60 3.3GTID自动定位68 3.4配置GTID复制70 3.4.1联机配置GTID复制70 3.4.2联机更改复制模式74 3.4.3GTID相关系统变量75 3.5GTID运维76 3.5.1跳过一个事务76 3.5.2mysqldump导出77 3.5.3主从切换78 3.6GTID限制81 3.7GTID集合运算函数84 3.7.1GTID内置函数84 3.7.2用户自定义函数84 3.7.3使用示例85 3.8小结88 第4章复制拓扑结构与性能89 4.1复制拓扑结构89 4.1.1一主一(多)从89 4.1.2双(多)主复制91 4.1.3多源复制99 4.1.4Blackhole引擎与日志服务器104 4.2复制性能108 4.2.1测试规划108 4.2.2sync_binlog与innodb_flush_log_at_trx_commit111 4.2.3组提交与多线程复制111 4.2.4基于WriteSet的多线程复制117 4.3小结120 第5章延迟复制与部分复制121 5.1延迟复制121 5.1.1延迟复制简介121 5.1.2延迟复制时间戳124 5.1.3监控延迟复制125 5.2部分复制125 5.2.1部分复制简介126 5.2.2评估库级复制选项126 5.2.3评估表级复制选项129 5.2.4复制规则应用134 5.2.5部分复制示例136 5.3主从切换139 5.3.1计划内主从切换139 5.3.2计划外切换140 5.4小结148 第6章组复制149 6.1组复制基本原理149 6.1.1MySQL复制技术149 6.1.2组复制使用场景151 6.1.3组复制相关服务151 6.1.4组复制插件体系结构152 6.1.5组复制分布式恢复153 6.2组复制安装部署156 6.2.1部署单主模式组复制157 6.2.2组复制监控165 6.2.3容错示例165 6.3组复制性能172 6.3.1概述172 6.3.2测试规划174 6.3.3消息压缩177 6.3.4组通信线程循环178 6.3.5写入集178 6.3.6流控179 6.3.7其他配置181 6.3.8主从、半同步、组复制性能对比测试183 6.4组复制要求与限制185 6.4.1组复制要求185 6.4.2组复制限制187 6.5小结188 第7章MySQLRouter189 7.1MySQLRouter简介189 7.1.1透明路由189 7.1.2元数据缓存190 7.1.3简单重定向190 7.1.4部署与使用191 7.1.5MySQLRouter8.0的新特性192 7.2Router实现MySQL高可用示例192 7.2.1安装和配置192 7.2.2自动故障转移199 7.2.3负载均衡202 7.2.4读写分离202 7.2.5多实例202 7.3Router8安装和配置205 7.3.1安装205 7.3.2启动206 7.3.3配置210 7.4小结214 第8章MySQLFabric215 8.1MySQLFabric简介215 8.1.1MySQLFabric的用途215 8.1.2MySQLFabric架构216 8.2高可用性218 8.2.1概述218 8.2.2安装与配置218 8.2.3HA功能测试226 8.3数据分片232 8.4MySQLFabric限制233 8.5小结234 第9章MMM235 9.1MMM简介235 9.1.1基本功能235 9.1.2工作原理236 9.1.3典型用例237 9.1.4切换流程238 9.1.5系统需求238 9.2实现MySQL主主复制的高可用240 9.2.1基本环境240 9.2.2安装和配置241 9.2.3功能测试244 9.3小结248 0章MHA249 10.1MHA简介249 10.1.1基本功能249 10.1.2切换流程250 10.1.3部署架构250 10.1.4主要特点251 10.1.5工具介绍252 10.2安装和配置252 10.2.1配置主从复制253 10.2.2安装Perl依赖模块253 10.2.3配置SSH免密登录254 10.2.4安装MHANode254 10.2.5安装MHAManager255 10.2.6配置MHA255 10.2.7创建相关脚本257 10.2.8检查MHA配置265 10.3功能测试267 10.3.1初始绑定VIP267 10.3.2测试自动切换267 10.3.3测试手工切换271 10.3.4测试在线主从切换273 10.3.5修复宕机的主库276 10.4小结276 1章Keepalived+LVS277 11.1Keepalived简介277 11.1.1VRRP协议277 11.1.2Keepalived架构设计278 11.2LVS简介280 11.3实现MySQL主从复制中的读写分离及高可用281 11.3.1架构设计282 11.3.2安装和配置283 11.3.3功能测试292 11.4实现MySQL双主复制的读写负载均衡及高可用295 11.4.1架构设计295 11.4.2安装和配置296 11.4.3功能测试301 11.5小结304 2章Heartbeat+HAProxy305 12.1Heartbeat简介305 12.1.1Heartbeat组成模块305 12.1.2Heartbeat工作原理307 12.2HAProxy简介308 12.3实现MySQL主从复制的读写分离及高可用309 12.3.1架构设计310 12.3.2安装和配置310 12.3.3功能测试320 12.4实现MySQL双主复制的读写负载均衡及高可用323 12.4.1架构设计323 12.4.2安装和配置324 12.4.3功能测试326 12.5小结329 3章InnoDBCluster330 13.1InnoDBCluster简介330 13.1.1整体架构330 13.1.2MySQLShell331 13.1.3MySQLRouter333 13.1.4MySQL服务器集群333 13.2创建InnoDBCluster334 13.2.1检查实例配置335 13.2.2配置实例337 13.2.3创建集群339 13.2.4向集群添加实例339 13.2.5查看集群状态341 13.2.6基于已有组复制创建集群343 13.2.7配置MySQLRouter343 13.2.8测试客户端连接346 13.2.9测试高可用性347 13.3使用MySQLShell管理InnoDBCluster349 13.3.1配置实例自动重新加入349 13.3.2从InnoDBCluster中删除实例350 13.3.3重启集群351 13.3.4解散InnoDBCluster352 13.3.5配置新主选举权重354 13.3.6配置故障转移一致性354 13.3.7更改组复制拓扑355 13.3.8设置InnoDBCluster选项356 13.4小结357 4章GaleraCluster358 14.1基本原理358 14.1.1同步复制359 14.1.2Galera复制架构361 14.1.3Galera工作原理362 14.1.4状态转移363 14.1.5流控365 14.1.6单节点故障与恢复367 14.1.7仲裁367 14.2安装和配置371 14.2.1初始安装371 14.2.2使用SST增加节点375 14.2.3使用IST增加节点376 14.3管理监控380 14.3.1在线DDL380 14.3.2恢复主组件382 14.3.3重置仲裁385 14.3.4管理流控386 14.3.5自动逐出388 14.3.6启用Galera仲裁员389 14.3.7Galera集群监控391 14.4性能测试394 14.4.1测试规划394 14.4.2测试过程397 14.5负载均衡399 14.5.1安装399 14.5.2配置400 14.5.3启动400 14.5.4测试401 14.6小结402 5章DRBD403 15.1DRBD简介403 15.1.1工作原理403 15.1.2基本概念404 15.2DRBD安装和配置405 15.2.1测试环境405 15.2.2安装前的准备工作406 15.2.3下载安装DRBD407 15.2.4配置DRBD407 15.3测试MySQL数据同步411 15.4Heartbeat+DRBD+MySQL高可用方案412 15.4.1配置413 15.4.2测试417 15.5小结419 6章优化案例420 16.1快速生成数字辅助表420 16.2将MySQL去重操作优化到极致422 16.2.1问题描述422 16.2.2巧用索引与变量423 16.2.3利用窗口函数431 16.2.4多线程并行432 16.3重叠时间段问题之算法优化441 16.3.1问题描述与分析441 16.3.2优化重叠查询443 16.3.3改进取得活跃时段的算法449 16.3.4MySQL8的单条查询解决方案456 16.4快速安全删除MySQL大表458 16.4.1表删除过程458 16.4.2创建硬链接459 16.4.3删除表460 16.4.4删除文件释放空间460 16.5小结461 |
随便看 |
|
霍普软件下载网电子书栏目提供海量电子书在线免费阅读及下载。