做家简介
刘遵庆,也即是小编本人,网名马听,7年DBA办事阅历,曾上任于PPTV、英语流丽说,慕课网图文专栏《一线数据库工程师带你深入了解MySQL》的做家。负责书中的云期间DBA办事的改变、MySQL监控、InnoDBCluster、MySQL索引等实质的编写。凡新雷,8年DBA办事阅历,曾上任于翼支拨,曾任趣头条DBA负责人,善于MySQL数据库调优和架构策画。书中的MySQL优化、主从复制、8.0新性格恰是他多年办事阅历的归纳。邹勇,7年DBA办事阅历,曾上任于饿了么,贝壳,并屡次参加数据库高可用编制设立。书中的MHA、Orchestrator恰是他以前参加高可用策画的一些阅历归纳。其它还负责了本书的根底学问、锁、事宜、编制构造、平安等章节的编写。本书走光咱们三位做家根底写的是本人善于的部份。并在开创经过中彼此查核,彼此议论,进而让书的实质尽或者充实。本书大部份学问点都设有对应的熟练,尽或者削减大段旨趣性的刻画,便利读者了解。全书是基于MySQL8.0。本书既包罗MySQL对比急迫的根底实质,如安置、索引、锁、事宜、编制构造、主从复制(包罗GTID复制、半同步复制、并行复制等)等,也包罗MySQL的优化(从硬件、操纵系统,参数、SQL语句等方面的优化)、典范、平安、备份、监控、高可用(MHA、Orchestrator和MGR)、分库分表、周边器械等实战实质。其它,本书增长了一些对比新的实质,如MySQL8.0的新性格、云期间DBA办事的改变等。本书可做为MySQL入门者、DBA、开辟工程师、运维工程师、架构师等的参考质料。目录第1章MySQL的根底学问/11.1数据库的安置全经过/11.1.1平台的取舍/11.1.2安置包的取舍/21.1.3系统处境的设立/31.1.4数据库的安置/31.2数据库的简朴运用/71.2.1连贯/71.2.2数据库的建立和运用/81.2.3增、删、改、查/81.3归纳/9第2章MySQL的索引/.1索引算法/.1.1按次搜索/.1.2二分搜索/.1.3二叉搜索树/.1.4均衡二叉树/.1.5B树/.1.6B+树/.1.7B+树索引/.2MySQL中的索引典型/.2.1聚拢索引/.2.2协助索引/.2.3唯独索引/.2.4连合索引/.3MySQL中的索引优化/.3.1ICP/.3.2MRR/.4对于索引的提倡/.5归纳/24第3章MySQL的锁/.1同享锁和排他锁/.2意向锁/.3纪录锁、空隙锁、插入意向锁和临键锁/.4MDL/.5死锁/.6归纳/34第4章MySQL的事宜/.1事宜的性格/.2事宜的完结/.2.1原子性的完结/.2.2一致性的完结/.2.3隔绝性的完结/.3MVCC完结/.3.1甚么是MVCC/.3.2完结的旨趣/.4通俗读和今朝读/.4.1通俗读/.4.2今朝读/.4.3小结/.5归纳/42第5章MySQL的编制构造/.1MySQL的构造/.2储备引擎/.3InnoDB的编制构造/.3.1内存构造/.3.2磁盘构造/.4归纳/53第6章MySQL罕用的日记文献/.1Binlog/.1.1Binlog根底/.1.2开启和关上Binlog/.1.3Binlog的影响/.1.4Binlog纪录的格式/.1.5Binlog的分析/.1.6MySQL8.0Binlog加密/.1.7Binlog的排除/.1.8Binlog的落盘/.1.9Binlog关连的参数/.2GeneralLog/.2.1GeneralLog的开启/.2.2GeneralLog的用法/.3SlowLog/.3.1SlowLog的开启/.3.2SlowLog的特别设立/.3.3SlowLog的实质分析/.3.4MySQL8.0慢盘查额外音信的输出/.4ErrorLog/.4.1ErrorLog的设立/.4.2ErrorLog的切割/.4.3借助ErrorLog定位的题目/.5RedoLog/.5.1RedoLog初探/.5.2RedoLog的落盘/.5.3RedoLog的数目及巨细改动/.5.4CheckPoint/.5.5LSN/.5.6MySQL8.0中的RedoLog归档/.5.7MySQL8.0中的RedoLog禁用/.6UndoLog/.6.1初识UndoLog/.6.2UndoLog的Purge/.6.3两种UndoLog/.6.4UndoLog的纪录格式/.6.5回滚功夫/.6.6UndoLog的关连设立/.7归纳/.7.1Binlog和RedoLog的差别/.7.2UndoLog和RedoLog的差别/78第7章MySQL的优化/.1硬件优化/.1.1硬件的取舍/.1.2RAID的取舍/.2操纵系统的优化/.2.1文献系统的取舍/.2.2系统参数的取舍/.2.3MySQL多实例资本隔绝优化/.3参数调优/.3.1参数的加载按次/.3.2罕用参数的调优/.4慢盘查分析/.4.1Explain/.4.2PerformanceSchema分析/.4.3Trace追踪器/.5SQL语句优化/.5.1分页盘查优化/.5.2notin优化/.5.3orderby优化/.5.4groupby优化/7.5.5索引hint优化/.6归纳/第8章MySQL的典范/.1建表的典范/.2安排和操纵的典范/.3SQL的典范/.4归纳/第9章MySQL的主从复制/9.1主从复制的搭建/.2GTID复制/.2.1GTID主从复制的设立/.2.2GTID的关连学问/.2.3GTID的主动定位/.2.4运用GTID复制形式的束缚/.3MySQL复制报错的管教/.3.1主从复制crash-safe/.3.2跳过GTID形式下的复制间断差错/9.4MySQL半同步复制/.4.1MySQL半同步复制的注重事情/.4.2MySQL半同步复制中的无损复制/.4.3无损复制的设立和参数/.4.4无损复制的矫正/.5MySQL并行复制/.5.1MySQL并行复制的旨趣和演进/.5.2MySQL并行复制的设立/9.6归纳/第10章MySQL的平安/.1平安指南/.2拜访管束/.3预留账户/.4脚色经管/.5明码经管/.5.1明码过时/.5.2明码重用/.5.3明码考证/.5.4双明码援助/.5.5随秘明码/.5.6明码试错/.6账户资本束缚/.7加密连贯/.8审计/.9归纳/第11章MySQL的备份/.1物理备份和逻辑备份/.2mysqldump/.2.1备份用户的权力/.2.2备份举例及参数评释/.2.3数据复原/.3mydumper/.3.1mydumper的安置/.3.2运用mydumper备份数据/.3.3运用myloader施行数据复原/.4XtraBackup/.4.1XtraBackup的安置/.4.2XtraBackup的办事过程/.4.3XtraBackup的用法举例/11.5ClonePlugin/.5.1ClonePlugin的安置/.5.2ClonePlugin的用法举例/.6归纳/第12章MySQL的监控/.1罕见的监控项/.1.1系统关连/.1.2形态关连/.1.3锁关连/.1.4连贯关连/19.1.5复制关连/19.1.6参数关连/.1.7交易关连/.2运用Zabbix监控MySQL/.2.1架构图/.2.2熟练处境/.2.3安置ZabbixServer/.2.4设立Zabbix数据库/.2.5编纂设立文献/.2.6启动ZabbixServer/.2.7ZabbixWeb界面初始化/.2.8安置ZabbixAgent/20.2.9安置Percona插件/20.2.10在Agent上建立Zabbix监控用户/20.2.11改动设立文献/20.2.12测试监控/20.2.13导入Percona模板/.2.14ZabbixWeb增长主机设立/.2.15观察监控数据/.3运用Prometheus监控MySQL/.3.1架构图/.3.2熟练处境/.3.3安排Prometheus/.3.4安排node_exporter组件/.3.5安排mysqld_exporter组件/21.3.6设立Prometheus获得监控数据/12.3.7安排Grafana/.3.8为Grafana设立Prometheus数据源/.3.9运用Grafana展现Linux的监控数据/.3.10运用Grafana展现MySQL的监控数据/.4运用PMM监控MySQL/22.4.1架构图/22.4.2熟练处境/22.4.3安置并启动Docker/22.4.4安置PMMServer/.4.5安置PMMClient/.4.6PMMClient连贯PMMServer/.4.7设立MySQL监控/.4.8翻开监控页面/.5归纳/第13章MySQL的高可用/.1MHA/.1.1架构编制/.1.2MHA器械包/.1.3安排和设立MHA/.1.4旨趣/23.1.5小结/.2Orchestrator/.2.1重要成效/.2.2上风/.2.3高可用/.2.4实行打算/.2.5集群重塑/.2.6安排和设立Orchestrator/.2.7参数设立/13.2.8Hook先容/24.2.9集群的运用/.2.10小结/.3InnoDBCluster/.3.1MGR初探/.3.2MGR与保守复制的差别/.3.3安排InnoDBCluster/13.3.4InnoDBCluster的罕用操纵/.3.5MGR的旨趣/.3.6MGR的一致性保证/.4归纳/第14章MySQL的分库分表/.1分库分表的绳尺/.2分库分表的场景/.3拆分形式/.3.1笔直拆分/.3.2程度拆分/.4分库分表的器械/.5分库分表背面对的题目/14.5.1事宜援助题目/14.5.2跨库盘查题目/14.5.3中心件高可用题目/14.6归纳/第15章MySQL的周边器械/.1Redis/.1.1MySQL与Redis协助实行秒杀场景/.1.2何如保证Redis和MySQL数据一致/.2ClickHouse和ClickTail/.3PerconaToolkit/.3.1pt-osc/.3.2pt-query-digest/.3.3pt-kill/.3.4pt-table-checksum/.3.5pt-table-sync/.4归纳/第16章MySQL8.0的新性格/.1事宜性数据字典/.1.1MySQL8.0以前版本的数据字典/.1.2MySQL8.0以前版本的数据字典存在的题目/.1.3MySQL8.0的数据字典/.1.4序列化字典音信/.1.5MySQL8.0的数据字典的上风/16.2迅速加列/16.2.1迅速加列成效的运用和束缚/16.2.2迅速加列的旨趣/.2.3迅速加列的经过/.3原子DDL/.3.1原子DDL的运用领域和束缚/.3.2原子DDL的性格和操纵/29.3.3原子DDL的旨趣/.3.4原子DDL的调试/.4资本组/.4.1资本组系统和权力预备/.4.2观察资本组音信/.4.3运用资本组/.5弗成见索引/.6窗口函数/.6.1窗口函数的性格/.6.2窗口函数的运用/.7长期化全面变量/.8其余新性格/.9归纳/第17章云期间DBA办事的改变/.13种典型的云/.2云运用的分类/17.2.1SaaS/17.2.2IaaS/17.2.3PaaS/17.2.4DBaaS/.3RDS/.4云原生数据库/.5上国有云的益处/.6上国有云的毛病/.7数据库上国有云前的注重事情/.8保守DBA的办事/.9上云后DBA办事的改变/.9.1