社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  DATABASE

MySQL 5.7即将终止支持,MySQL 8势在必行

图灵编辑部 • 1 年前 • 332 次点击  

在全球主流数据库中,MySQL 一直是流行的开源数据库,拥有广泛的受众。根据 DB-Enginesi 在 2023 年 10 月发布的流行度趋势排名,目前全球前四的数据库依次为 Oracle,MySQL,Microsoft SQL Server 和 PostgreSQL,均为关系型数据库。

2023 年 10 ⽉ DB-Engines 数据库排⾏榜

MySQL 已连续数年位于流行度前两位同时也有着较高的市场份额。根据 2022 年 Slintel 网站的统计数据,在全球关系型数据库市场中,MySQL 市场份额最高,达到 43.04%,排名第二的 Oracle 仅为 16.76%。

2013 年 4 月 MySQL 5.7 发布了第一个对外版本。2015 年 10 月发布 5.7.9 GA 版本,于 2020 年 10 月结束了标准支持。2023 年 10 月 MySQL 5.7 终止支持,此后 Oracle 将不再为 MySQL 5.7 提供官方更新、错误修复和安全补丁,即 EOL(End of Life)。

MySQL 8.0 作为当前的主流版本,于 2016 年 9 月发布第一个版本,并于 2018 年 4 月发布 8.0.11 GA 版本。当前,最新版本为 2023 年 7 月发布的 8.0.34 版本。MySQL 8.0 版本引入的新特性包括:

  • 新增了角色(role)支持批量权限管理

  • 支持了窗口函数

  • 支持了 CTE(Common table expressions)

  • 新增备份锁(Backup lock)

  • Hash Join 支持

  • GIPK(Generated invisible primary keys)隐式主键

  • 原子 DDL

  • 部分系统表默认使用 InnoDB 引擎

  • 大量 InnoDB 改进

对很多企业和个人来说,虽然大多数的运行版本是 MySQL 5.7,但迁移到 MySQL 8.0 势在必行,而充分利用 MySQL 8.0 的新特性提高生产力就成为重中之重。

小编今天推荐这本书帮助大家解决燃眉之急。既聚焦 MySQL 8.0 相关问题,又深度解读常用工具和常用操作原理!

这本书出自目前担任甲骨文首席工程师,拥有 10 多年数据库管理和架构经验的陈臣老师。全书历时五年完成,全面且实用。作者给出了有关 MySQL 完整、细致、靠谱、可落地的解决方案。

MySQL 实战》
陈臣 | 著

本书基于 MySQL 8.0,不仅介绍了可以拿来即用的实战内容,还专门剖析了各个操作背后的实现原理,让你不仅知其然,也知其所以然。此外,每章最后还会通过列出问题的方式梳理重点,不仅可以用来检验对内容的掌握程度,也可以作为很好的面试题。

本书内容 


本书内容以 MySQL 8.0 为主,全面系统地阐述了 MySQL 日常使用及管理过程中的一些常用知识点:安装、复制、binlog、备份、监控、DDL、线程池、中间件、常用工具、组复制、InnoDB Cluster、JSON、MySQL 8.0 的新特性。

注重实战,目的是让读者拿来即用,快速上手 MySQL。除了实战,本书还花费了大量的篇幅来讲解 MySQL 中一些常见操作、常用工具的实现原理。

组复制是 MySQL 官方推荐的高可用方案,本书会从源码角度分析组复制的一些核心模块的实现细节,包括分布式恢复、冲突检测、事务一致性以及流量控制机制等。

大家通过下面的思维导图可以查看本书的内容。

点击可以查看大图


本书一共12章,各章内容如下。

  • 第 1 章介绍了 MySQL 的两种常用安装方法以及两种常用的 MySQL 服务管理方式。

  • 第 2 章从复制的基本原理出发,系统介绍了 GTID 复制、半同步复制、并行复制、多源复制和延迟复制。

  • 第 3 章首先分析了 binlog 的 3 种格式及其优缺点,接着演示了如何阅读 binlog 和 relay log 中的内容,然后介绍了 binlog 中常见的事件类型,最后基于 python-mysql-replication 打造了一个 binlog 解析器。

  • 第 4 章主要介绍了常用的复制管理操作,复制的监控,如何分析主从延迟,主从延迟的常见原因及解决方法 Seconds_Behind_Master 的计算逻辑,如何监控主从延迟,复制中的常见问题及解决方法。

  • 第 5 章首先介绍了 MySQL 常见备份工具的具体用法及实现原理,然后介绍了与备份相关的两个高频操作,最后介绍了如何搭建 binlog server 以及如何检测备份的有效性。

  • 第6 章介绍了业界流行的两个开源监控方案——Zabbix 和基于 Prometheus 开发的 PMM,以及 MySQL 中常用的监控指标。

  • 第 7 章首先介绍了3种常用的表结构变更方式——Online DDL、pt-online-schema-change 和 gh-ost,接着介绍了元数据锁的基本概念和引入背景,最后分析了如何定位 DDL 被阻塞的问题。

  • 第 8 章围绕连接池和线程池展开介绍。

  • 第 9 章介绍了 MySQL 中一些常用工具的具体用法及实现原理。

  • 第 10 章介绍了中间件 ProxySQL。

  • 第 11 章系统介绍了组复制的引入背景、部署、监控和常见的管理操作,并且基于源码分析了组复制一些核心模块的实现细节。

  • 第 12 章系统介绍了 InnoDB Cluster 的两大核心组件:MySQL Shell 和 MySQL Router。


本书特色

1. 实战性强:案例丰富且可移植性强,拿来即用。

2. 原理深入浅出:快速掌握 MySQL 常见操作的实现原理。

3. 源码解析:从源码角度理解组复制核心模块的实现细节。

4. 作者靠谱:甲骨文首席工程师,“MySQL实战”公众号作者倾力打造。


本书作者

陈臣,甲骨文(Oracle)公司首席工程师,前 vivo 互联网数据库专家,有超过10 年的数据库管理和架构经验,擅长 MySQL 数据库日常操作的原理剖析。公众号“MySQL实战”作者,博客园推荐博客博主 iVictor,博客全网阅读量超 300 万。


业内大咖推荐


MySQL 是流行的开源数据库。陈臣所著的《MySQL实战》是基于他自己的大规模数据库管理实践,结合源码、官方文档和原理形成的一本书,系统地介绍了在 MySQL 的管理、运维和开发过程中使用范围较广但参考资料匮乏的工具。

——谢鹏
甲骨文(Oracle)公司全球副总裁
中国区技术总经理

看完这本书的目录及样章,深感陈臣满满的诚意。全书紧紧围绕 MySQL 实战的方方面面展开,有详细的实战细节,更是对几个关键知识点给了原理解读,让读者能更好地理解,知其然且知其所以然。以“组复制”这一章为例,前半部分详细演示了组复制的部署及管理操作,后半部分详细分析了组复制的一些关键实现原理,其中原理解读部分占了该章 60% 以上的篇幅,详细程度可见一斑。强烈推荐这本书,绝对值得一看。

——叶金荣
Oracle MySQL ACE Director
腾讯云TVP成员

读完样章,内容让人惊艳:GTID 的原理与并行复制,主从原理与 binlog 细节,XtraBackup 的巧妙原理,连接池与线程池,中间件的运用实践,包括最新的组复制实践……沉下心,嚼碎这些内容,我相信你一定能超越九成的 MySQL 从业人员。感谢陈臣的诚意之作,让大家学习 MySQL 又多了一个选择。行业内能有这样的技术匠人,幸甚至哉!

——沈剑
公众号“架构师之路”作者

拿到这本书的书稿后,既觉得是意料之中,又确实出乎了意料。这本书算得上近年来国内 MySQL 领域出版物中内容十分丰富、细节十分清晰、篇幅也是相当长的,其运维实践与源码解析相结合的思路正与《MySQL运维内参》不谋而合,不愧为实战之作。

——周彦伟
极数云舟创始人
《MySQL运维内参》作者
中国计算机行业协会数据库专委会会长

这本书不仅包含了 MySQL 的实战操作和对应的理论知识,还包含了 MySQL 的一些非常实用的周边工具和中间件,实属难得。不论对于数据库初学者还是有经验者,这本书都值得反复研读,实践是检验真理的唯一标准。

——肖博
vivo研发总监

陈臣是奋战在运维一线的 DBA 专家,见证过大型数据库平台从零开始建设的过程。他从一个数据库运维人员的角度帮大家把 MySQL 的整个运维体系梳理了出来,书中不仅介绍了 MySQL 的原理、使用方法,更重要的是贡献出了他自己的经验,包括对 MySQL 生态的周边工具、中间件、连接池等的介绍和使用经验。这些经验十分宝贵。非常推荐 MySQL DBA 们阅读一下这本书,无论对于新手入门还是老手进阶,这本书都是不错的参考。

——彭立勋
ACMUG(中国MySQL用户组)主席
Oracle MySQL ACE Director

此外,MySQL 业界大佬吴炳锡老师在阅读完该书的部分章节后,也表示:“2023 年了,《MySQL实战》这本书还是值得推荐的。”


本书适合人群


相关阅读

其他 MySQL 相关图书推荐。

Amazon全五星评价,畅销多年,入门必读。
《MySQL必知必会》
Ben Forta | 著
刘晓霞,钟鸣 | 译

本书从数据检索开始,逐步深入各种复杂内容。包括联的使用、子查询、正则表达式和基于全文本的搜索、存储过程、游标、触发器、表约束,等等。通过重点突出的章节,条理清晰、系统而扼要地讲述了读者应该掌握的知识,使他们不经意间立刻功力大增。《MySQL必知必会》注重实用性,操作性很强,适用于广大软件开发和数据库管理人员学习参考。


日本公认的 MySQL入 门首选教程,原版长销 13 年,简明易懂。

《MySQL基础教程》
西泽梦路 | 著
卢克贵 | 译

本书介绍了 MySQL 的操作方法以及通过使用 PHP 和 MySQL 创建 Web 应用程序的基础知识。作者从数据库是什么开始讲起,由浅入深,通过丰富的图示和大量的示例程序,让读者循序渐进地掌握 MySQL,最终带领读者使用 MySQL和 PHP 开发能够在 Web 上公开的具有安全性的 Web 应用程序。


豆瓣评分 9.6,累计超 1000 万人次学习的计算机教程,零基础快速上手。
《从0到1——MySQL即学即用》
莫振杰 | 著



绿叶学习网计算机系列教程,累计超过 1000 万人次学习。286 个示例 + 120 道习题 + 21 个经典问题 + PPT 讲义 + 源码素材。基于 MySQL 8 标准编写,零基础快速上手数据库开发。

本书内容分为四部分:第 1 部分介绍 MySQL 的基本语法,包括查询操作、数据统计、高级查询、内置函数、表的操作、列的属性等。 第 2 部分介绍 MySQL 的高级技术,包括多表连接、视图、索引、存储过程、存储函数、事件、触发器、游标、事务。第 3 部分通过经典案例帮助读者融会贯通。第 4 部分提供了常用的数据参考。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/163432
 
332 次点击