MySQL性能最佳化和高可用架構實踐

MySQL性能最佳化和高可用架構實踐

《MySQL性能最佳化和高可用架構實踐》是2020年清華大學出版社出版的圖書,作者是宋立桓。

基本介紹

  • 書名:MySQL性能最佳化和高可用架構實踐
  • 作者:宋立桓
  • 出版社清華大學出版社
  • 出版時間:2020年7月1日
  • ISBN:9787302554172
內容簡介,圖書目錄,

內容簡介

網際網路公司裡面幾乎很少有公司不用MySQL,國內網際網路巨頭都在大規模使用MySQL。如果把MySQL比喻成資料庫界的一條巨龍,則性能最佳化和高可用架構設計實踐就是點睛之筆。本書將詳細講解 MySQL 5.7高可用和性能最佳化技術,細緻梳理思路,並與真實生產案例相結合,通過原理闡述到實戰部署,幫助讀者將所學知識點運用到實際工作中。 本書分為13章,詳解MySQL 5.7資料庫體系結構,InnoDB存儲引擎,MySQL事務和鎖,性能最佳化,伺服器全面最佳化、性能監控,以及MySQL主從複製、PXC、MHA、MGR、Keepalived+雙主複製等高可用集群架構的設計與實踐過程,並介紹數據分庫分表和Mycat中間件的實戰操作。

圖書目錄

第1章 MySQL架構介紹 1
1.1 MySQL簡介 1
1.2 MySQL主流的分支版本 2
1.3 MySQL存儲引擎 4
1.4 MySQL邏輯架構 6
1.5 MySQL物理檔案體系結構 8
第2章 InnoDB存儲引擎體系結構 14
2.1 緩衝池 14
2.2 change buffer 17
2.3 自適應哈希索引 19
2.4 redo log buffer 19
2.5 double write 20
2.6 InnoDB後台執行緒 22
2.6.1 InnoDB主執行緒 22
2.6.2 InnoDB後台I/O執行緒 23
2.6.3 InnoDB髒頁刷新執行緒 24
2.6.4 InnoDB purge執行緒 25
2.7 redo log 25
2.8 undo log 26
2.9 Query Cache 27
第3章 MySQL事務和鎖 28
3.1 MySQL事務概述 28
3.2 MySQL事務隔離級別 30
3.3 InnoDB的鎖機制介紹 33
3.4 鎖等待和死鎖 36
3.4.1 鎖等待 36
3.4.2 死鎖 38
3.5 鎖問題的監控 39
第4章 SQL語句性能最佳化 42
4.1 MySQL查詢過程 42
4.2 創建高性能索引 44
4.2.1 索引的原理 44
4.2.2 聚集索引和輔助索引 46
4.2.3 Index Condition Pushdown 47
4.2.4 Multi-Range Read Optimization 50
4.2.5 Batched Key Access 52
4.3 慢SQL語句最佳化思路 54
4.3.1 抓取慢SQL語句 54
4.3.2 利用explain分析查詢語句 57
4.3.3 利用show profiles分析慢SQL語句 60
4.4 索引使用的原則及案例分析 61
4.4.1 索引使用的原則 61
4.4.2 沒有使用到索引的案例分析 62
第5章 MySQL伺服器全面最佳化 64
5.1 MySQL 5.7 InnoDB存儲引擎增強特性 64
5.2 硬體層面最佳化 68
5.3 Linux作業系統層面最佳化 69
5.4 MySQL配置參數最佳化 70
5.5 MySQL設計規範 72
第6章 MySQL性能監控 75
6.1 監控圖表的指導意義 75
6.2 Lepus資料庫監控系統實戰 76
6.2.1 Lepus資料庫監控系統簡介 76
6.2.2 Lepus資料庫監控系統部署 77
6.2.3 監控MySQL伺服器 85
6.2.4 Lepus慢查詢分析平台 89
第7章 MySQL主從複製詳解 93
7.1 主從複製的概念和用途 93
7.2 主從複製的原理及過程描述 94
7.3 主從複製的重點參數解析 95
7.4 主從複製的部署架構 97
7.5 異步複製 98
7.6 半同步複製 102
7.6.1 半同步複製概念和原理 102
7.6.2 半同步複製配置 104
7.7 GTID複製 105
7.7.1 GTID特性和複製原理介紹 105
7.7.2 GTID複製配置實戰 106
7.8 多源複製 109
7.9 主從複製故障處理 111
7.10 主從延遲解決方案和並行複製 114
第8章 PXC高可用解決方案 118
8.1 PXC概述 118
8.2 PXC的實現原理 119
8.3 PXC集群的優缺點 120
8.4 PXC中的重要概念 121
8.5 PXC集群部署實戰 122
8.6 PXC集群狀態監控 131
8.7 PXC集群的適用場景和維護總結 132
第9章 基於MHA實現的MySQL自動故障轉移集群 134
9.1 MHA簡介 134
9.2 MHA原理 135
9.3 MHA的優缺點 136
9.4 MHA工具包的功能 136
9.5 MHA集群部署實戰 137
第10章 MySQL Group Replication 156
10.1 MGR概述 156
10.2 MGR基本原理 157
10.3 MGR服務模式 160
10.3.1 單主模式 160
10.3.2 多主模式 160
10.4 MGR的注意事項 161
10.5 MGR部署實戰 162
10.6 MGR的監控 166
10.7 MGR的主節點故障無感知切換 170
第11章 Keepalived+雙主複製的高可用架構 171
11.1 Keepalived+雙主架構介紹 171
11.2 Keepalived介紹 171
11.3 雙主+Keepalived集群搭建 172
第12章 資料庫分庫分表與中間件介紹 179
12.1 關係資料庫的架構演變 179
12.1.1 資料庫讀寫分離 179
12.1.2 資料庫垂直分庫 180
12.1.3 資料庫水平分庫與水平分表 180
12.2 分庫分錶帶來的影響 182
12.3 常見的分庫分表中間件介紹 183
第13章 Mycat中間件詳解 185
13.1 Mycat簡介 185
13.2 Mycat核心概念 186
13.3 Mycat安裝部署 188
13.4 Mycat配置檔案詳解 193
13.4.1 schema.xml 193
13.4.2 server.xml 196
13.4.3 rule.xml 198
13.5 Mycat分庫分表實戰 201
13.6 Mycat讀寫分離實戰 208

相關詞條

熱門詞條

聯絡我們