MySQL王者晋级之路
  • 推荐0
  • 收藏3
  • 浏览1.2K

MySQL王者晋级之路

张甦 (作者) 

  • 书  号:978-7-121-33679-9
  • 出版日期:2018-03-14
  • 页  数:344
  • 开  本:16(185*235)
  • 出版状态:上市销售
纸质版 ¥79.00

相关图书

高性能SQL调优精要与案例解析

闫书清 (作者)

本书共分为两篇,基础篇(第1 章~第10 章)介绍了SQL 调优应该具备和掌握的理论和方法,<br>实践篇(第11 章)精选并深入解析了10 个现实中的实际案例...

¥69.00

Effective SQL:编写高质量SQL语句的61条有效方法(英文版)

John L. Viescas; Douglas J. Steele;Ben G. Clothier (作者) (译者)

本书全面系统地介绍了SQL语言各方面的基础知识以及一些高级特性,包括SQL数据语言、SQL方案语言、数据集操作、子查询以及内建函数与条件逻辑等内容。书中每个章节...

 

C++语法词典

黄勇 (作者)

本书对C++的语法进行了全面介绍和深入讲解,内容包括:C++整型、字符型、浮点型、声明、定义、typedef、运算符、表达式、左值、选择语句、循环语句、指针、数...

¥89.00

MySQL运维内参:MySQL、Galera、Inception核心原理与最佳实践

周彦伟 (作者)

MySQL能够处理拥有数十亿行的大型数据库,随着越来越多的公司和大型组织发现MySQL完全能够满足自己的数据库处理需求,其用户量一直还会持续高速增长。本书是一本...

¥119.00

深入理解Redis

汪佳南 (作者) 汪佳南 (译者)

本书以由浅入深、由原理到应用场景的方式介绍了Redis 这款NoSQL 数据库产品。书中不仅细致地讲解了Redis 中的数据结构及流行的使用模式,还针对Redi...

¥55.00

对象存储:OpenStack Swift应用、管理与开发

Joe Arnold (作者) 李明宇 (译者)

本书主要介绍了OpenStack Swift的原理与架构,以及应用程序设计、安装、部署、运维与性能测试等内容。本书用生动翔实的语言带你领略Swift对象存储的魅...

¥59.00
目前大部分软件开发平台都基于Linux,很多互联网公司都把MySQL作为后端数据存储的数据库。如果把MySQL比喻成数据库界的一条巨龙,则本书涵盖的所有知识点就是这条巨龙的组成部分。
本书深入剖析MySQL数据库体系结构,实战演练备份恢复、主从复制,详解高可用集群架构的设计与实践过程,详细梳理优化思路,展现新版本的特性,并与真实生产案例相结合,通过核心原理到“王者”实战,全面覆盖MySQL数据库的知识点。



1.资深数据库专家十年沉淀
2.详细解析MySQL数据库体系结构
3.技术问答,助力面试
找到一份合适的工作,就像在工作的八小时之内有了一个心仪的恋人—MySQL数据库就是我的甜蜜爱恋。
我上学时特别不爱学习,也从来没有想过,也不敢想,有一天自己会写本书。作为一个在数据库领域摸爬滚打近十年的“老司机”,从一个什么都不会的菜鸟,做到公司的高管兼资深数据库讲师,我很希望把自己这些年积累下来的实战经验和一些学习MySQL数据库的心得体会分享给大家。我很能理解那些刚进入数据库领域的同学的困惑,因为自己刚学习MySQL的时候,就跟无头苍蝇一样,遇到报错后在网上到处找资料,关键是看完资料后有些问题可能还是解决不了,因为不知道哪种处理方法是对的。当时很崩溃,真心不知道该从哪里下手学习才好。别人还经常推荐一些过于偏向概念性叙述的数据库书籍,越看越晕。我当时就想为什么非要把数据库的知识点说得这么烦琐、深奥,让别人看不懂、理解不了呢?
写作本书的目的
我平常喜欢写一些技术博客,在51CTO上面写了一篇“青铜到王者,快速提高MySQL数据库段位”的文章,这篇文章指明了MySQL数据库的一个学习方向,但没有深入展开讲解里面的核心知识点。有读者发私信和留言说,能不能更具体地展开讲解呢。所以我决定把里面所有核心的技术干货写成书,毫无保留地分享给大家。希望本书对大家在生产中实践MySQL时有帮助,可以让有一定基础的、有工作经验的运维人员和DBA更加深入地了解MySQL,使用和维护起来更加得心应手,更希望可以让刚踏入数据库领域的读者快速掌握MySQL数据库的核心知识体系,给那些想学习MySQL数据库的入门者指明一个正确方向,少走一些弯路。让我们一起朝着技术领域金字塔的塔尖大步前行。
如何阅读本书
本书在知识结构上分为7部分。
第1部分 倔强青铜篇(第1~8章)。包括MySQL简介、主流分支版本、数据库安装/启动/关闭、权限管理、MySQL数据库的内存池结构、存储引擎、线程作用、刷新机制、数据库文件、表管理、字符集、统计信息与数据碎片整理的方法。还包括对索引的详细解读,执行计划的分析、压力测试的展现、事务的介绍,以及对隔离级别的深度讲解,并结合锁一起展开学习。
第2部分 秩序白银篇(第9章)。介绍生产环境中常用的备份方法、逻辑备份和裸文件备份。针对mysqldump、select…into outfile、mydumper和xtrabackup等备份恢复工具的原理展开详解及实践演练。
第3部分 荣耀黄金篇(第10~11章)。介绍主从复制的原理,对复制参数进行详细讲解,对半同步复制、多源复制、GTID复制进行全面解读与实践,对复制数据一致性的校验和复制管理技巧进行介绍,并解读主从复制中的各种报错故障。
第4部分 尊贵铂金篇(第12~15章)。介绍互联网主流的MySQL高可用集群架构,对MHA、Keepalived、PXC原理的解析、维护管理与实践,最后介绍ProxySQL这个强大的MySQL中间代理层的应用。
第5部分 永恒钻石篇(第16~17章)。介绍MySQL 5.7版本的新特性,以及通过硬件、操作系统、数据库、程序设计这四个维度来全面介绍MySQL数据库的优化。
第6部分 至尊星耀篇(第18~19章)。学习部署Lepus,监控MySQL与版本升级。
第7部分 最强王者篇 第20章。MySQL面试总结。
致谢
在我从事数据库工作近十年的道路上,我要感谢那些曾经帮助过我的前辈们,当我遇到困难想要放弃这个行业时,是你们耐心的开导与指引,才使我没有失去方向,一直坚持到今天。我也要感谢51CTO这个平台,让我可以把自己工作中的经验分享给大家,感谢51CTO的运营经理高阳,不厌其烦地帮我整理博客中的一些素材,才能让我的文章以很好的方式呈现给大家。最后还要感谢电子工业出版社的陈晓猛编辑,感谢你的独具慧眼和对我无条件的支持与鼓励,让我可以非常顺利地完成写作。
技术无国界,让我们一起热爱技术、分享知识,打造出属于自己的一片广阔天空。此书献给所有喜欢技术的朋友们!
联系方式
欢迎大家与我互动,联系方式如下。
博客:sumongodb.blog.51cto.com。
张甦

目录

第1部分 倔强青铜篇
第1章 MySQL简介与主流分支版本
1.1 MySQL简介
1.2 MySQL主流的分支版本
1.2.1 官方版本的MySQL
1.2.2 Percona Server
1.2.3 MariaDB
第2章 MySQL数据库的安装、启动和关闭
2.1 下载MySQL二进制软件包
2.2 安装前系统环境检测
2.3 MySQL 5.6版本的安装过程
2.4 创建密码
2.5 关闭MySQL数据库
2.6 基础数据库的名称
2.7 MySQL 5.7版本的安装
2.8 MySQL数据库root密码丢失的问题
2.9 MySQL数据库的连接方式
2.10 用户权限管理
第3章 MySQL体系结构与存储引擎
3.1 MySQL体系结构
3.2 Query Cache详解
3.3 存储引擎
3.4 InnoDB体系结构
3.4.1 数据库和数据库实例
3.4.2 InnoDB存储结构
3.4.3 内存结构
3.4.4 Buffer状态及其链表结构
3.4.5 各大刷新线程及其作用
3.4.6 内存刷新机制
3.4.7 InnoDB的三大特性
第4章 数据库文件
4.1 参数文件
4.2 参数类型
4.3 错误日志文件(error log)
4.4 二进制日志文件(binary log)
4.5 慢查询日志(slow log)
4.6 全量日志(general log)
4.7 审计日志(audit log)
4.8 中继日志(relay log)
4.9 Pid文件
4.10 Socket文件
4.11 表结构文件
4.12 InnoDB存储引擎文件
第5章 表
5.1 整型
5.2 浮点型
5.3 时间类型
5.4 字符串类型
5.5 字符集
5.6 表碎片产生的原因
5.7 碎片计算方法及整理过程
5.8 表统计信息
5.9 统计信息的收集方法
5.10 MySQL库表常用命令总结
第6章 索引
6.1 二叉树结构
6.2 平衡二叉树结构
6.3 B-tree结构
6.4 B+tree
6.4.1 聚集索引和普通索引
6.4.2 ICP、MRR和BKA
6.4.3 主键索引和唯一索引
6.4.4 覆盖索引
6.4.5 前缀索引
6.4.6 联合索引
6.5 哈希索引
6.6 索引的总结
第7章 事务
7.1 事务的特性
7.2 事务语句
7.3 truncate和delete的区别
7.4 事务的隔离级别
7.5 细说脏读、不可重复读、幻读、可重复读现象
7.5.1 脏读
7.5.2 不可重复读与幻读
7.5.3 可重复读
第8章 锁
8.1 InnoDB的锁类型
8.1.1 读锁
8.1.2 写锁
8.1.3 MDL锁
8.1.4 意向锁
8.2 InnoDB行锁种类
8.2.1 单个行记录的锁
8.2.2 间隙锁(GAP lock)
8.2.3 Next-key Locks
8.3 锁等待和死锁
8.4 锁问题的监控

第2部分 秩序白银篇
第9章 备份恢复
9.1 MySQL的备份方式
9.2 冷备及恢复
9.3 热备及恢复
9.3.1 mysqldump的备份与恢复
9.3.2 select …into outfile
9.3.3 load data与insert的插入速度对比
9.3.4 mydumper
9.3.5 裸文件备份XtraBackup
9.4 流式化备份
9.4.1 非压缩模式的备份
9.4.2 压缩模式的备份
9.4.3 远程备份
9.5 表空间传输
9.6 利用binlog2sql进行闪回
9.7 binlog server
9.8 总结

第3部分 荣耀黄金篇
第10章 主从复制概述
10.1 常见的几种主从架构模式图
10.2 主从复制功能
10.3 主从复制原理
10.4 复制中的重点参数详解
第11章 复制原理及实战演练
11.1 异步复制
11.2 主从复制故障处理
11.3 半同步复制
11.4 半同步复制和异步复制模式的切换
11.5 GTID 复制
11.5.1 GTID原理介绍
11.5.2 GTID存在的价值
11.5.3 主从复制中GTID的管理与维护
11.5.4 GTID复制与传统复制的切换
11.5.5 GTID使用中的限制条件
11.6 多源复制
11.7 主从延迟的解决方案及并行复制
11.8 主从复制的数据校验
11.9 总结

第4部分 尊贵铂金篇
第12章 MHA
12.1 MHA简介
12.1.1 MHA部署
12.1.2 MHA原理
12.1.3 MHA的优缺点
12.1.4 MHA工具包的功能
12.2 实战演练
第13章 Keepalived+双主架构
13.1 Keepalived介绍
13.2 集群搭建思路及建议
13.3 实验部署演练
第14章 PXC
14.1 PXC原理
14.2 PXC架构的优缺点
14.3 PXC中重要概念和重点参数
14.4 PXC架构搭建实战
14.5 PXC集群状态的监控
14.6 从节点在线转化为PXC节点
第15章 ProxySQL
15.1 ProxySQL的安装与启动
15.2 配置ProxySQL监控
15.3 ProxySQL的多层配置系统
15.4 配置ProxySQL主从分组信息
15.5 配置读写分离策略
15.6 测试读写分离
15.7 总结

第5部分 永恒钻石篇
第16章 MySQL 5.7新特性
16.1 InnoDB存储引擎的增强
16.2 其他方面的增强
第17章 MySQL全面优化
17.1 硬件优化
17.2 配置参数优化
17.3 从Linux操作系统层面来谈对MySQL的优化
17.4 表设计及其他优化
17.5 整体管理优化总结

第6部分 至尊星耀篇
第18章 Lepus之MySQL监控
18.1 Lepus简介
18.2 实战部署
18.3 监控MySQL服务器
18.4 部署Lepus慢查询分析平台实战
18.5 监控总结
第19章 MySQL版本升级
19.1 升级方式
19.2 实战演练

第7部分 最强王者篇
第20章 MySQL面试宝典
20.1 自我介绍
20.2 技术问答

本书勘误

印次
  • 页码:19  •  行数:2行  •  印次: 1

    ./mysqld —defaults-file=/etc/my.cnf —basedir=/usr/local/mysql —datadir=/data/mysql —user=mysql -initialize,这里的“-initialize”应该是”—initialize”

    kindone 提交于 2018/5/3 17:20:26
    陈晓猛 确认于 2018/5/4 14:10:34
  • 页码:30  •  行数: 椭圆图  •  印次: 1

    page cleaner thread写了两次 漏了purge thread

    慕塔 提交于 2018/4/1 13:55:29
    陈晓猛 确认于 2018/4/4 14:03:02
  • 页码:99  •  行数:8  •  印次: 1

    6.4.4 覆盖索引

    MySQL只需要通过索引就可以返回查询所需要的数据,而不必在查到索引之后再 “去回” 表查询数据了,

    “去回” 应该调整为 “回去”

    博文专用小马甲 提交于 2018/7/8 12:14:28
    陈晓猛 确认于 2018/7/9 9:02:03
  • 页码:114  •  印次: 1

    8.1 InnoDB 的锁类型

    InnoDB 的行锁类型主要有读锁(共享锁)、写锁(排他锁)、意向锁和 MDL 锁。

    应为:

    InnoDB 的锁类型主要有读锁(共享锁)、写锁(排他锁)、意向锁和 MDL 锁。

    王序猿 提交于 2018/5/16 15:51:00
    陈晓猛 确认于 2018/5/16 16:21:36

读者评论

  • 这本书的配置文件和一些脚本的源码为什么没提供下载?

    wenlong2022发表于 2018/7/10 20:22:48
  • 刚买的书。第18章 第293页 http://cdn.lepus.cc/cdncache/software/MySQLdb-python.zip 无法下载 链接无效 哪里能下载 呀 无法继续安装了。

    zzzhuc发表于 2018/5/27 20:50:40
    • 只要下周MySQLdb-python.zip 这个包即可,不必非要按照书上的地址

      陈晓猛发表于 2018/5/28 9:44:04
    • @陈晓猛 找不到地方下 给个地址吧

      zzzhuc发表于 2018/5/28 18:10:58
    • pymysql

      ywhulk发表于 2018/6/4 19:49:38
  • 209页 vim /etc/hosts文件中:
    node1 192.168.56.100
    node2 192.168.56.101
    node3 192.168.56.102
    主机名和IP地址正好写反了,应该是:
    192.168.0.100 node1
    192.168.0.101 node2
    192.168.0.102 node3
    如果按照出版的时候,ping主机名是无法返回IP地址的

    kindone发表于 2018/5/21 20:05:49
    • 是的,正好写反了,感谢勘误

      陈晓猛发表于 2018/5/28 9:44:22
  • 47页中有如下一段话:
    InnoDB缓冲池中刷出来的脏页在被写入数据文件之前,都会写入double write buffer,然后从两次写缓冲区分两次,每次将1MB大小的数据写入共享表空间(double write),最后再从double write buffer写入数据文件。
    其中“然后从两次写缓冲区分两次”一直没看明白,这里是不是有歧义?

    kindone发表于 2018/5/7 15:09:41
    • 其实就是从buffer先写double write,然后再写磁盘~这么理解就好

      陈晓猛发表于 2018/5/28 10:12:40

图书类别

相关博文

  • MySQL与主流分支版本简介

    MySQL与主流分支版本简介

    管理员账号 2018-06-04

    本文主要介绍MySQL 5.6和MySQL 5.7这两个Oracle公司开发的代表作品。为了让大家先对MySQL有一个基础的认识,我们先来看一看MySQL的发展历程。 1.MySQL简介 1999年至2000年,Monty成立了My...

    管理员账号 2018-06-04
    144 0 1 0