《高可用mysql:构建健壮的数据中心》是“mysql high availability”的中文翻译版,主要讲解真实环境下如何使用mysql 的复制、集群和监控特性,揭示mysql 可靠性和高可用性的方方面面。本书由mysql 开发团队亲自执笔,定位于解决mysql 数据库的常见应用瓶颈,在保持mysql 的持续可用性的前提下,挖潜各种提高性能的解决方案。本书分为三个部分。第一部分讲述mysql 复制,包括高可用性和横向扩展,第二部分介绍构建健壮的数据中心时监控和性能方面的问题,第三部分给出其他mysql 相关内容,包括云计算和mysql 集群。
《高可用mysql:构建健壮的数据中心》读者对象是mysql 专业人士。假设读者已拥有sql、mysql 管理和操作系统的基础背景知识。书中介绍一些关于复制、灾难恢复、系统监控及其他高可用性主题的背景信息。相关有用的背景知识请参考其他书籍的第1 章。对于相关专业的师生,本书也有很高的参考价值。
前言 i
第一部分 复制
第1章 引言 3
到底什么是复制5
那么,是否需要备份6
什么是监控 7
还有什么我可以阅读的 7
小结8
第2章 mysql复制原理 9
复制的基本步骤10
配置master 11
配置slave12
连接master和slave13
二进制日志简介14
二进制日志记录了什么 15
观察复制的动作16
二进制日志的结构和内容 17
使用python管理复制 20
基本类及函数22
.操作系统 23
服务器类 23
服务器角色.25
建立新slave26
克隆master 27
克隆slave29
克隆操作的脚本31
执行常见的复制任务33
报表 33
小结39
第3章 二进制日志 41
二进制日志的结构42
binlog事件的结构 44
记录语句 45
记录数据操作语言46
记录数据定义语言46
记录查询 47
load data infile语句 52
二进制日志过滤器54
触发器、事件和存储程序 56
存储过程 61
存储函数 64
events 66
特殊结构 66
非事务性的变化和错误处理 67
记录事务 70
事务缓存 71
使用xa进行分布式事务处理74
二进制日志管理76
二进制日志和系统崩溃安全 77
binlog文件轮换(rotation)78
事故(incident) 79
清除binlog文件 80
mysqlbinlog实用工具81
基本用法 81
解释事件(interpreting events)88
二进制日志选项和变量 92
小结94
第4章 基于复制的数据库高可用技术95
冗余96
计划98
slave故障98
master故障98
中继服务器故障99
灾难恢复 99
程序99
热备份 102
双master 107
半同步复制116
slave的提升 119
循环复制 134
小结 138
第5章 mysql集群的横向扩展 139
读操作的横向扩展 141
异步复制的价值 142
管理复制拓扑144
应用层负载均衡器示例 147
级联复制(hierarchal replication) 150
中继服务器的设置 151
使用python添加中继服务器 152
专用slave 153
过滤复制事件 154
使用过滤将事件分配给slave 155
数据分片 157
分片的表示159
数据分区 160
分片之间的均衡 161
一个分片的例子 163
数据的一致性管理 174
非级联部署中的一致性 174
级联部署中的一致性 176
小结 182
第6章 高级复制183
复制架构基础184
中继日志的结构 185
复制线程 187
slave线程的启动和停止 188
通过internet运行复制189
使用内置支持建立安全复制 191
使用stunnel建立安全复制 192
细粒度控制复制 194
关于复制状态的信息 194
处理断开连接的参数 201
slave是如何处理事件的 202
管理i/o线程 202
sql线程的处理 203
slave的安全和恢复 208
同步,事务和数据库崩溃问题 209
保护非事务性语句的规则 210
多源复制 211
基于行的复制214
基于行的复制参数 215
混合模式的复制 215
处理基于行复制的事件 216
事件的执行220
事件和触发器 222
过滤 223
小结 225
第二部分 监控和灾难恢复
第7章 监控入门229
监控方法 230
监控的好处 231
监控系统组件231
处理器 231
内存 233
磁盘 233
网络子系统234
监控方法 235
linux和unix监控 236
进程活动 237
内存利用率241
磁盘利用率243
网络活动 246
常见系统统计信息 248
使用cron自动监控 249
mac os x 监控 249
system profile 250
控制台(console) 252
activity monitor 253
microsoft windows监控 257
windows experience 257
system health report 259
event viewer(事件查看器) 261
reliability monitor 263
the task manager(任务管理器) 264
performance monitor 266
预防性维护监控 267
小结 268
第8章 监控mysql269
什么是性能 270
mysql服务器监控 270
如何显示mysql性能 271
性能监控 271
sql命令 272
mysqladmin实用工具 278
mysql gui工具 279
mysql管理器 280
mysql查询浏览器 289
服务器日志290
第三方工具293
mysql benchmark套件 295
数据库性能 296
测量数据库性能 297
数据库优化的最佳实践 308
提高性能的最佳实践 315
一切都慢 316
慢查询 316
慢应用 316
慢复制 317
小结 317
第9章 监控存储引擎319
myisam 320
优化磁盘存储 320
优化数据库表 320
使用myisam实用工具 321
按索引顺序存储表 323
压缩表 323
对数据表进行碎片整理 323
监控key cache 324
预加载key cache 325
使用多个key cache 325
其他需要考虑的参数 326
innodb 328
使用show engine命令 329
使用innodb监控器 332
监控日志文件 335
监控缓冲池336
监控表空间338
使用information_schema表 338
其他需要考虑的参数 339
小结 340
第10章 复制监控341
开始 341
安装服务器 342
包容性和排他性复制 342
复制线程 344
监控master 346
master的监控命令 346
master的状态变量 349
监控slave 350
slave的监控命令 350
slave的状态变量 353
使用mysql管理器监控复制 354
其他需要考虑的项 356
网络 356
监控和管理slave滞后 356
slave延迟的原因和预防措施 357
小结 358
第11章 复制的故障排除361
什么导致错误发生 362
master上的问题 362
slave上的问题 366
高级复制问题 371
排除复制故障的工具 372
最佳实践 374
了解你的拓扑结构 374
查询所有服务器的状态 376
查看日志 376
检查配置信息 377
有序执行系统关闭 377
在遇到错误后按序执行重启 377
手动执行失败查询 378
常用程序 378
报告复制故障379
小结 380
第12章 保护你的投资383
什么是信息保障 384
信息保障的三个应用 384
信息保障为什么重要 385
信息完整性、灾难恢复及备份的职责 385
高可用性与灾难恢复 386
灾难恢复 386
数据恢复的重要性 391
备份和恢复392
备份实用程序和操作系统级的解决方案 396
innodb hot backup应用 397
物理文件的复制 400
mysqldump工具 402
xtrabackup 404
逻辑卷管理器快照 404
备份方法的比较 409
备份和mysql复制 410
使用复制进行备份和恢复 410
pitr 411
自动备份 418
小结 421
第13章 mysql企业版 423
mysql企业版入门 424
订阅级别 425
安装概述 426
mysql企业组件 427
mysql企业服务器 427
mem 427
mysql产品支持 431
mysql企业版的使用 431
安装 432
修复监控代理问题 433
监控 434
查询分析器440
更多信息 443
小结 443
第三部分 高可用性环境
第14章 云计算解决方案447
什么是云计算448
云架构 450
云计算是一种经济的选择吗 453
云计算实例 454
云计算的好处454
云计算供应商455
aws 456
技术简要概述 457
它是如何工作的 461
amazon cloud工具461
入门 465
使用磁盘 479
接下来怎么做 484
云中的mysql 484
mysql复制和ec2 485
ec2中使用mysql的最佳实践 488
开源云计算 490
小结 491
第15章 mysql集群493
什么是mysql集群 494
术语和组件494
mysql集群和mysql有何不同 495
典型配置 495
mysql集群的特点 496
局部和全局冗余 497
日志处理 498
冗余和分布式数据 498
mysql集群的架构 499
如何存储数据 501
分区 504
事务管理 504
联机操作 505
配置实例 506
入门 507
启动mysql集群 508
集群测试 513
关闭集群 514
达到高可用性514
系统恢复 517
节点恢复 518
复制 518
获得高性能 523
高性能的注意事项 523
高性能的最佳实践 524
小结 527
附录a 复制建议和窍门529
slave停机了,怎么办 529
检查冗长的二进制日志 530
利用复制在表中重建数据 530
基于语句的日志 530
基于行的日志 531
使用mysql proxy来完成多master的复制 531
使用默认的存储引擎 532
mysql cluster 多源(multisource)复制 532
多路(multichannel)复制故障转移 533
使用当前数据库来过滤 533
slave上的列比master上多 534
slave上的列比master上少 535
选择某几列复制到slave 536
复制心跳 537
在环形复制中忽略服务器 538
功能预览:延时复制 538
功能预览:脚本式复制 539
功能预览:oracle算法 540
索引541
《信号完整性分析》全面论述了信号完整性问题。主要讲述了信号完整性和物理设计概论,带宽、电感和特性阻抗的实质含义,电阻、电
《催眠术教程(第2版)》内容简介:本书别开生面,采用教科书编写体例,由表及里,由浅至深,撩去催眠术的神秘面纱,帮助心理学从业
你早该掌握的办公技能-Word/Excel/PowerPoint案例与技巧一本通-含DVD光盘1张 本书特色 《你早该掌握的办公技能--Word\\Excel\...
學會大師的穿搭品味原來服裝設計師,這樣想、這樣看時尚業入行know-how,不去紐約,就能學到美國服裝產業的潛規則、真技術看完本
抄袭检测研究 本书特色 《抄袭检测研究》以文本的抄袭检测为研究对象,探索了抄袭检测的语料库构建、Web环境下的抄袭源检索和高模糊抄袭检测的文本对齐的问题、数据、...
精通数据科学:从线性回归到深度学习 本书特色 本书全面讲解了数据科学的相关知识,从统计分析学到机器学习、深度学习中用到的算法及模型,借鉴经济学视角给出模型的相关...
SincedevelopmentfirstbeganonSpringin2003,theresbeenaconstantbuzzaboutitinJavadev...
《生活在哪个朝代最郁闷》内容简介:历史并不重复,只是押韵而已。——马克·吐温 历史给我们的教训就是,人们从来都不知道汲取历史
《儿童时间管理亲子手册》内容简介:《儿童时间管理训练手册》的出版,为困扰中的父母提供抓手。“三表一录”帮助孩子“一立三高”
本书是一本与众不同的Java入门好书。作者以独特的视角,向Java初学者讲述了如何才能真正理解和掌握Java语言。本书充分考虑了初学
作家加里·哈梅尔的预测尖锐地指出了所有公司面临的挑战——商场逐鹿中,只有疾速创新才能立于不败之地。美国著名设计公司IDEO的
《一看就停不下来的三国史》内容简介:原来董卓竟曾有过周公梦?贾诩是三国时期最精致的利己主义者?是武圣关羽的傲娇终结了刘备的
五笔打字轻松掌握 本书特色 本书是学习五笔字型打字的基础教材,书中详细地介绍了初学者必须掌握的基本知识、使用方法和操作步骤,并对初学者在使用五笔字型打字时经常碰...
《数据虚拟化》内容简介:本书介绍了在当前大数据、人工智能的背景下,使用数据虚拟化技术实现多源异构数据集成的方法。本书共9章,
《理智与情感》内容简介:人文社本版“奥斯丁文集”首次亮相 简·奥斯丁处女作,与《傲慢与偏见》堪称姐妹篇 简·奥斯丁在十九岁时
《深入大型数据集cf》内容简介:《深入大型数据集:并行与分布化Python代码》共分3部分,主要介绍如何使用Python语言来处理大型数据
《掌握分布式跟踪:微服务和复杂系统性能分析》内容简介:本书是作者基于其在Uber跟踪团队担任技术主管时的个人经历而写的。本书分
C#课程设计案例精编 内容简介 本书从实际应用出发,详细介绍了使用C*开发.NET应用程序的方法。书中的9 个案例由浅入深、从简单到复杂地介绍了使用C*开发程序...
《唐诗洛阳记:千年古都的文学史话》内容简介:本书将时段定于隋唐,将空间定于洛阳,是一部体例独特的唐代文学史话,试图描绘一幅
本书采用程序员最爱用的面向对象C++语言来描述数据结构和算法,并把数据结构原理和算法分析技术有机地结合在一起,系统介绍了各种