mysql管理之道_《MySQL管理之道:性能调优、高可用与监控 第2版》PDF版本下载

一、目录介绍

84eeb5f93363f35e62dc234d45afbc43.png

推荐序:飞跃的第2版

前言

第1章 MariaDB架构与历史

1.1   MariaDB的介绍

1.2   MariaDB和MySQL的兼容性

1.3   MariaDB 10.0新增的功能

1.3.1 更多的存储引擎

1.3.2 速度的提升

1.3.3 扩展和新功能

1.4   如何将MySQL迁移至MariaDB

1.5   使用二进制包安装MariaDB 10.1企业版

1.6   总结

第2章 MySQL 5.7与MariaDB 10.1的新特性

2.1   性能提升

2.2   安全性的提升

2.2.1 默认开启SSL

2.2.2 不再明文显示用户密码

2.2.3 sql_mode的改变

2.3   InnoDB存储引擎的提升

2.3.1 更改索引名字时不会锁表

2.3.2 在线DDL修改varchar字段属性时不锁表

2.3.3 InnoDB/MyisAM存储引擎支持中文全文索引

2.3.4 InnoDB Buffer Pool预热改进

2.3.5 在线调整innodb_Buffer_Pool_Size不用重启mysql进程

2.3.6 回收(收缩)undo log回滚日志物理文件空间

2.3.7 InnoDB提供通用表空间

2.3.8 创建InnoDB独立表空间指定存放路径

2.3.9 迁移单独一张InnoDB表到远程服务器

2.3.10 修改InnoDB redo log事务日志文件大小更人性化

2.3.11 死锁可以打印到错误日志里

2.3.12 支持InnoDB只读事务

2.3.13 支持InnoDB表空间数据碎片整理

2.4   JSON格式的支持

2.4.1 支持用JSON格式存储数据

2.4.2 动态列支持用JSON格式存储数据

2.5   支持虚拟列(函数索引)

2.5.1 MySQL 5.7支持函数索引

2.5.2 MariaDB 10.0/10.1支持函数索引

2.6   功能提升

2.6.1 支持杀死慢的SQL语句

2.6.2 支持一张表有多个INSERT/DELETE/UPDATE触发器

2.6.3 引入线程池(Thread Pool)技术

2.6.4 提供审计日志功能

2.6.5 支持explain update

2.6.6 在MySQL 5.7 中按Ctrl+C组合键不会退出客户端

2.6.7 可将错误日志打印到系统日志文件中

2.6.8 支持创建角色

2.6.9 支持TokuDB存储引擎

2.7   优化器改进

2.7.1 针对子查询select采用半连接优化

2.7.2 优化派生子查询

2.7.3 优化排序limit

2.7.4 优化IN条件表达式

2.7.5 优化union all

2.7.6 支持索引下推优化

2.7.7 支持Multi Range Read索引优化

2.7.8 支持Batched Key Access(BKA)索引优化

2.7.9 支持Hash Join索引优化

2.8   半同步复制改进

2.8.1 半同步复制简介

2.8.2 半同步复制的安装配置

2.8.3 参数说明

2.8.4 功能测试

2.8.5 性能测试

2.9   GTID复制改进

2.9.1 GTID复制概述

2.9.2 在MySQL 5.6的GTID模式下同步复制报错不能跳过的解决方法

2.9.3 MySQL 5.7中GTID复制的改进

2.9.4 GTID复制的陷阱

2.9.5 MariaDB 10.1中GTID复制的改进

2.9.6 GTID的使用方式不同

2.10  MySQL 5.6/5.7从库崩溃安全恢复

2.11  MariaDB 10.0/10.1从库崩溃安全恢复

2.12  slave从库多线程复制

2.13  slave支持多源复制

2.14  MySQL 5.7设置同步复制过滤不用重启mysql服务进程

2.15  小结

第3章 故障诊断

3.1   影响MySQL性能的因素

3.2   系统性能评估标准

3.2.1 影响Linux服务器性能的因素

3.2.2 系统性能评估指标

3.2.3 开源监控和评估工具介绍

3.3   故障与处理

3.3.1 连接数过多导致程序连接报错的原因

3.3.2 记录子查询引起的宕机

3.3.3 诊断事务量突高的原因

3.3.4 谨慎设置binlog_format=MIXED

3.3.5 未设置swap分区导致内存耗尽,主机死机

3.3.6 MySQL故障切换之事件调度器注意事项 128

3.3.7 人工误删除InnoDB ibdata数据文件,如何恢复

3.3.8 update忘加where条件误操作恢复(模拟Oracle闪回功能)

3.3.9 delete忘加where条件误操作恢复(模拟Oracle闪回功能)

第4章 同步复制报错故障处理

4.1   最常见的3种故障

4.1.1 在master上删除一条记录时出现的故障

4.1.2 主键重复

4.1.3 在master上更新一条记录,而slave上却找不到

4.2 特殊情况:slave的中继日志relay-log损坏

4.3 人为失误

4.4 避免在master上执行大事务

4.5 slave_exec_mode参数可自动处理同步复制错误

4.6 如何验证主从数据一致

4.7 binlog_ignore_db引起的同步复制故障

4.8 MySQL5.5.19/20同步一个Bug

4.9 恢复slave从机上的某几张表的简要方法

4.10 如何干净地清除slave同步信息

第5章 性能调优

5.1   表设计

5.2   字段类型的选取

5.2.1 数值类型

5.2.2 字符类型

5.2.3 时间类型

5.2.4 小技巧:快速修改表结构

5.2.5 pt-online-schema-change在线更改表结构

5.2.6 MySQL5.6在线DDL更改表测试

5.3   采用合适的锁机制

5.3.1 表锁的演示

5.3.2 行锁的演示

5.3.3 InnoDB引擎与MyISAM引擎的性能对比

5.4   选择合适的事务隔离级别

5.4.1 事务的概念

5.4.2 事务的实现

5.4.3 事务隔离级别介绍

5.5   SQL优化与合理利用索引

5.5.1 如何定位执行很慢的SQL语句

5.5.2 SQL优化案例分析

5.5.3 合理使用索引

5.6   my.cnf配置文件调优

5.6.1 per_thread_buffers优化

5.6.2 global_buffers优化

5.6.3 Query Cache在不同环境下的使用

5.6.4 tuning-primer.sh性能调试工具的使用

5.6.5 72 GB内存的my.cnf配置文件

5.6.6 谨慎使用分区表功能

5.7   MySQL5.6同步复制新特性详解

第6章 备份与恢复

6.1   冷备份

6.2   逻辑备份

6.2.1 mysqldump增加了一个重要参数

6.2.2 取代mysqldump的新工具mydumper

6.2.3 逻辑备份全量、增量备份脚本

6.3   热备份与恢复

第7章 高可用MHA架构集群管理

7.1   MHA架构简介

7.1.1 master自动监控和故障转移

7.1.2 手工处理master故障转移

7.1.3 在线平滑切换

7.2   MHA配置安装

7.3   MHA故障切换演示

7.3.1 场景一:master自动监控和故障转移

7.3.2 场景二:master手工故障转移

7.3.3 场景三:在线平滑切换

7.4   MHA高可用架构总结

第8章 MySQL架构演进:“一主多从、读/写分离”

8.1   实现读/写分离的两种方式

8.2   主从同步延迟的判断标准

8.3   HAProxy感知MySQL主从同步延迟

8.4   读/写分离MariaDB MaxScale架构搭建演示

8.4.1 配置环境及安装介绍

8.4.2 基于connect方式的测试

8.4.3 基于statement方式(SQL解析)的测试

8.4.4 MaxScale延迟检测

8.5   读/写分离OneProxy介绍及架构搭建演示

8.5.1 OneProxy简介

8.5.2 OneProxy的功能及安装介绍

8.5.3 OneProxy读/写分离接入限制

第9章 Codership Galera Cluster 集群架构搭建与管理

9.1   Codership Galera Cluster的特性和优缺点

9.2   Codership Galera Cluster的局限性

9.3   Codership Galera Cluster的工作原理

9.4   Codership Galera Cluster的配置

9.4.1 Codership Galera Cluster的配置环境及安装

9.4.2 功能测试

9.5   HAProxy结合Galera Cluster实现无单点秒级故障切换

第10章 OneProxy分库分表的搭建与管理

10.1   OneProxy 分库分表的搭建

10.1.1 配置与安装

10.1.2 前端PHP/Java程序接入事项

10.2   OneProxy分库分表接入限制

10.3   OneProxy分库分表基本测试

10.3.1 分库分表的功能测试

10.3.2 分库分表的二级分区测试

10.3.3 分库分表的聚合测试

10.3.4 分库分表的插入测试

10.3.5 分库分表不支持跨库join的测试

10.3.6 分库分表不支持分布式事务的测试

10.3.7 分库分表不支持存储过程的测试

10.4   搭建OneProxy高可用故障切换HA

10.5   OneProxy 黑名单SQL防火墙搭建测试

第11章 Lepus慢日志分析平台搭建与维护

11.1   Lepus基础组件的安装

11.2   安装percona-toolkit工具

��

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
mysql管理之道性能调优高可用监控》由资深mysql专家撰写,以最新的mysql版本为基础,以构建高性能mysql服务器为核心,从故障诊断、表设计、sql优化、性能参数调优、mydumper逻辑、xtrabackup热备份与恢复、mysql高可用集群搭建与管理mysql服务器性能和服务监控等方面多角度深入讲解了如何去管理与维护mysql服务器。 书中内容以实战为导向,所有内容均来自于笔者多年实践经验的总结和对新知识的拓展,同时也针对运维人员、dba等相关工作者会遇到的有代表性的疑难问题给出了实用的情景模拟,并给出了解决方案。不论你目前有没有遇到过此类问题,相信对你以后处理相关问题都会有所借鉴。本书适合所有希望构建和管理高性能、高可用性的mysql数据库系统的开发者和dba阅读。 目录 · · · · · · 前言 第一部分 mysql5.5 新特性篇 第1章 mysql5.5介绍 2 1.1 性能上的显著改变 2 1.1.1 mysql5.5默认存储引擎的调整 2 1.1.2 充分利用cpu多核的处理能力 7 1.1.3 提高刷新脏页数量和合并插入数量,改善磁盘i/o处理能力 8 1.1.4 增加自适应刷新脏页功能 9 1.1.5 让innodb_buffer_pool缓冲池中的热数据存活更久 9 1.1.6 innodb的数据恢复时间加快 11 1.1.7 innodb同时支持多个bufferpool实例 15 1.1.8 可关闭自适应哈希索引 17 1.1.9 在innodb中可选择使用内存分配程序 18 1.1.10 提高默认innodb线程并发数 21 1.1.11 预读算法的变化 22 1.1.12 首次在linux上实现了异步i/o 23 1.1.13 恢复组提交 24 1.1.14 innodb使用多个回滚段提升性能 26 1.1.15 改善清除程序进度 26 .1.1.16 添加删除缓冲和清除缓冲 27 1.1.17 控制自旋锁spin lock轮训间隔 28 1.1.18 快速创建、删除、更改索引 29 1.1.19 innodb支持创建压缩数据页 30 1.1.20 可动态关闭innodb更新元数据的统计功能 37 1.2 安全性、稳定性的显著改变 38 1.2.1 复制功能加强 38 1.2.2 中继日志relay-log可自我修复 39 1.2.3 开启innodb严格检查模式 39 1.3 动态更改系统配置参数 39 1.3.1 支持动态更改独立表空间 39 1.3.2 支持动态更改innodb锁超时时间 40 1.4 innodb新参数汇总 40 1.5 同步复制新参数汇总 48 1.6 sql语句写法的改变 53 1.6.1 delete表连接语法改变 53 1.6.2 mysql5.5存储过程支持limit变量 54 1.7 mysql5.1升级为mysql5.5 55 1.7.1 采用mysql_upgrade升级授权表方式升级 55 1.7.2 直接安装mysql5.5,采用数据导出/导入方式升级 59 1.8 性能测试:mysql5.5与mysql5.1 60 第2章 半同步复制 62 2.1 半同步复制简介 62 2.2 半同步复制安装配置 63 2.3 参数说明 63 2.4 功能测试 64 2.4.1 如何验证半同步复制是否正常工作 64 2.4.2 半同步复制与异步复制的切换 65 2.5 性能测试 68 2.6 小结 70 第二部分 故障诊断与性能优化篇 第3章 故障诊断 72 3.1 影响mysql性能的因素 72 3.2 系统性能评估标准 73 3.2.1 影响linux服务器性能的因素 73 3.2.2 系统性能评估指标 74 3.2.3 开源监控和评估工具介绍 76 3.3 故障与处理 79 3.3.1 连接数过多导致程序连接报错的原因 79 3.3.2 记录子查询引起的宕机 84 3.3.3 诊断事务量突高的原因 87 3.3.4 谨慎设置binlog_format=mixed 90 3.3.5 未设置swap分区导致内存耗尽,主机死机 94 3.3.6 mysql故障切换之事件调度器注意事项 95 3.3.7 人工误删除innodb ibdata数据文件,如何恢复 97 3.3.8 update忘加where条件误操作恢复(模拟oracle闪回功能) 99 3.3.9 delete忘加where条件误操作恢复(模拟oracle闪回功能) 108 第4章 同步复制报错故障处理 112 4.1 最常见的3种故障 112 4.1.1 在master上删除一条记录时出现的故障 112 4.1.2 主键重复 114 4.1.3 在master上更新一条记录,而slave上却找不到 115 4.2 特殊情况:slave的中继日志relay-log损坏 116 4.3 人为失误 118 4.4 避免在master上执行大事务 119 4.5 slave_exec_mode参数可自动处理同步复制错误 120 4.6 如何验证主从数据一致 121 4.7 binlog_ignore_db引起的同步复制故障 123 4.8 mysql5.5.19/20同步一个bug 124 4.9 恢复slave从机上的某几张表的简要方法  126 4.10 如何干净地清除slave同步信息 127 第5章 性能调优 129 5.1 表设计 129 5.2 字段类型的选取 133 5.2.1 数值类型 134 5.2.2 字符类型 139 5.2.3 时间类型 141 5.2.4 小技巧:快速修改表结构 148 5.2.5 pt-online-schema-change在线更改表结构 152 5.2.6 mysql5.6在线ddl更改表测试 158 5.3 采用合适的锁机制 161 5.3.1 表锁的演示 161 5.3.2 行锁的演示 164 5.3.3 innodb引擎与myisam引擎的性能对比 166 5.4 选择合适的事务隔离级别 168 5.4.1 事务的概念 168 5.4.2 事务的实现 169 5.4.3 事务隔离级别介绍 171 5.5 sql优化与合理利用索引 177 5.5.1 如何定位执行很慢的sql语句 177 5.5.2 sql优化案例分析 178 5.5.3 合理使用索引 188 5.6 my.cnf配置文件调优 198 5.6.1 per_thread_buffers优化 198 5.6.2 global_buffers优化 200 5.6.3 query cache在不同环境下的使用 201 5.6.4 tuning-primer.sh性能调试工具的使用 205 5.6.5 72 gb内存的my.cnf配置文件 208 5.6.6 谨慎使用分区表功能 211 5.7 mysql5.6同步复制新特性详解 213 第6章 备份与恢复 223 6.1 冷备份 224 6.2 逻辑备份 224 6.2.1 mysqldump增加了一个重要参数 225 6.2.2 取代mysqldump的新工具mydumper 226 6.2.3 逻辑备份全量、增量备份脚本 229 6.3 热备份与恢复 230 第三部分 高可用集群管理篇 第7章 目前流行的4种高可用架构 236 7.1 采用mysql自带的replication架构 237 7.1.1 keepalived+mysql replication架构的搭建演示 237 7.1.2 mmm+mysql replication架构的搭建演示 241 7.2 heartbeat+drbd+mysql架构的搭建演示 249 7.3 红帽rhcs共享存储架构的搭建演示 254 7.3.1 安装过程 257 7.3.2 红帽rhcs集群的维护 265 7.4 mysql高可用集群ha解决方案的测试评估 267 第8章 批量管理服务器 270 8.1 开源工具pssh的使用方法 270 8.2 自己编写的ssh服务器批量管理工具 273 第四部分 监控篇 第9章 性能监控 278 第10章 服务监控 283 10.1 nagios搭建与维护 283 10.2 mysql数据库的监控脚本 288 第五部分 项目案例 第11章 项目案例讲解 292 11.1 数据碎片整理方案 292 11.2 用户信息表水平拆表方案 296 11.3 阿里巴巴中间件cobar水平拆表方案 299
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值