高可用MySQL:构建健壮的数据中心

高可用MySQL:构建健壮的数据中心
作 者: 贝尔 肯德尔 塞尔曼 宁青 唐李洋 诸云萍
出版社: 电子工业出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: SQL
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《高可用MySQL:构建健壮的数据中心》作者简介

内容简介

《高可用MySQL:构建健壮的数据中心》是“MySQL High Availability”的中文翻译版,主要讲解真实环境下如何使用MySQL的复制、集群和监控特性,揭示MySQL可靠性和高可用性的方方面面。《高可用MySQL:构建健壮的数据中心》由MySQL开发团队亲自执笔,定位于解决MySQL数据库的常见应用瓶颈,在保持MySQL的持续可用性的前提下,挖潜各种提高性能的解决方案。《高可用MySQL:构建健壮的数据中心》分为三个部分。第一部分讲述MySQL复制,包括高可用性和横向扩展,第二部分介绍构建健壮的数据中心时监控和性能方面的问题,第三部分给出其他MySQL相关内容,包括云计算和MySQL集群。

图书目录

Table of Contents

前言 i

第一部分 复制

第1章 引言

到底什么是复制

那么,是否需要备份

什么是监控

还有什么我可以阅读的

小结

第2章 MySQL复制原理

复制的基本步骤

配置Master

配置Slave

连接Master和Slave

二进制日志简介

二进制日志记录了什么

观察复制的动作

二进制日志的结构和内容

使用Python管理复制

viii | 目录

基本类及函数

操作系统

服务器类

服务器角色

建立新Slave

克隆Master

克隆Slave

克隆操作的脚本

执行常见的复制任务

报表

小结

第3章 二进制日志

二进制日志的结构

Binlog事件的结构

记录语句

记录数据操作语言

记录数据定义语言

记录查询

LOAD DATA INFILE语句

二进制日志过滤器

触发器、事件和存储程序

存储过程

存储函数

Events

特殊结构

非事务性的变化和错误处理

记录事务

事务缓存

使用XA进行分布式事务处理

目录 | ix

二进制日志管理

二进制日志和系统崩溃安全

Binlog文件轮换(Rotation)

事故(incident)

清除binlog文件

mysqlbinlog实用工具

基本用法

解释事件(Interpreting Events)

二进制日志选项和变量

小结

第4章 基于复制的数据库高可用技术

冗余

计划

Slave故障

Master故障

中继服务器故障

灾难恢复

程序

热备份

双Master

半同步复制

Slave的提升

循环复制

小结

第5章 MySQL集群的横向扩展

读操作的横向扩展

异步复制的价值

管理复制拓扑

x | 目录

应用层负载均衡器示例

级联复制(Hierarchal Replication)

中继服务器的设置

使用Python添加中继服务器

专用Slave

过滤复制事件

使用过滤将事件分配给Slave

数据分片

分片的表示

数据分区

分片之间的均衡

一个分片的例子

数据的一致性管理

非级联部署中的一致性

级联部署中的一致性

小结

第6章 高级复制

复制架构基础

中继日志的结构

复制线程

Slave线程的启动和停止

通过Internet运行复制

使用内置支持建立安全复制

使用Stunnel建立安全复制

细粒度控制复制

关于复制状态的信息

处理断开连接的参数

Slave是如何处理事件的

管理I/O线程

目录 | xi

SQL线程的处理

Slave的安全和恢复

同步,事务和数据库崩溃问题

保护非事务性语句的规则

多源复制

基于行的复制

基于行的复制参数

混合模式的复制

处理基于行复制的事件

事件的执行

事件和触发器

过滤

小结

第二部分 监控和灾难恢复

第7章 监控入门

监控方法

监控的好处

监控系统组件

处理器

内存

磁盘

网络子系统

监控方法

Linux和UNIX监控

进程活动

内存利用率

磁盘利用率

网络活动

xii | 目录

常见系统统计信息

使用cron自动监控

Mac OS X 监控

System profile

控制台(console)

Activity Monitor

Microsoft Windows监控

Windows Experience

System health report

Event Viewer(事件查看器)

Reliability Monitor

The Task Manager(任务管理器)

Performance Monitor

预防性维护监控

小结

第8章 监控MySQL

什么是性能

MySQL服务器监控

如何显示MySQL性能

性能监控

SQL命令

mysqladmin实用工具

MySQL GUI工具

MySQL管理器

MySQL查询浏览器

服务器日志

第三方工具

MySQL Benchmark套件

目录 | xiii

数据库性能

测量数据库性能

数据库优化的最佳实践

提高性能的最佳实践

一切都慢

慢查询

慢应用

慢复制

小结

第9章 监控存储引擎

MyISAM

优化磁盘存储

优化数据库表

使用MyISAM实用工具

按索引顺序存储表

压缩表

对数据表进行碎片整理

监控Key Cache

预加载Key Cache

使用多个Key Cache

其他需要考虑的参数

InnoDB

使用SHOW ENGINE命令

使用InnoDB监控器

监控日志文件

监控缓冲池

监控表空间

使用INFORMATION_SCHEMA表

xiv | 目录

其他需要考虑的参数

小结

第10章 复制监控

开始

安装服务器

包容性和排他性复制

复制线程

监控Master

Master的监控命令

Master状态变量

监控Slave

Slave的监控命令

Slave的状态变量

使用MySQL管理器监控复制

其他需要考虑的项

网络

监控和管理Slave滞后

Slave延迟的原因和预防措施

小结

第11章 复制的故障排除

什么导致错误发生

Master上的问题

Slave上的问题

高级复制问题

排除复制故障的工具

最佳实践

了解你的拓扑结构

查询所有服务器的状态

目录 | xv

查看日志

检查配置信息

有序执行系统关闭

在遇到错误后按序执行重启

手动执行失败查询

常用程序

报告复制故障

小结

第12章 保护你的投资

什么是信息保障

信息保障的三个应用

信息保障为什么重要

信息完整性、灾难恢复及备份的职责

高可用性与灾难恢复

灾难恢复

数据恢复的重要性

备份和恢复

备份实用程序和操作系统级的解决方案

InnoDB Hot Backup应用

物理文件的复制

mysqldump工具

XtraBackup

逻辑卷管理器快照

备份方法的比较

备份和MySQL复制

使用复制进行备份和恢复

PITR

自动备份

xvi | 目录

小结

第13章 MySQL企业版

MySQL企业版入门

订阅级别

安装概述

MySQL企业组件

MySQL企业服务器

MEM

MySQL产品支持

MySQL企业版的使用

安装

修复监控代理问题

监控

查询分析器

更多信息

小结

第三部分 高可用性环境

第14章 云计算解决方案

什么是云计算

云架构

云计算是一种经济的选择吗

云计算实例

云计算的好处

云计算供应商

AWS

技术简要概述

它是如何工作的

目录 | xvii

Amazon Cloud工具

入门

使用磁盘

接下来怎么做

云中的MySQL

MySQL复制和EC

EC2中使用MySQL的最佳实践

开源云计算

小结

第15章 MySQL集群

什么是MySQL集群

术语和组件

MySQL集群和MySQL有何不同

典型配置

MySQL集群的特点

局部和全局冗余

日志处理

冗余和分布式数据

MySQL集群的架构

如何存储数据

分区

事务管理

联机操作

配置实例

入门

启动MySQL集群

集群测试

关闭集群

xviii | 目录

达到高可用性

系统恢复

节点恢复

复制

获得高性能

高性能的注意事项

高性能的最佳实践

小结

附录A 复制建议和窍门

Slave停机了,怎么办

检查冗长的二进制日志

利用复制在表中重建数据

基于语句的日志

基于行的日志

使用MySQL Proxy来完成多Master的复制

使用默认的存储引擎

MySQL Cluster 多源(Multisource)复制

多路(Multichannel)复制故障转移

使用当前数据库来过滤

Slave上的列比Master上多

Slave上的列比Master上少

选择某几列复制到Slave

复制心跳

在环形复制中忽略服务器

功能预览:延时复制

功能预览:脚本式复制

功能预览:Oracle算法

索引