本書一共分為3篇:基礎篇(上)、案例篇和工具篇(下)。
基礎篇:
從理論基礎和基本原理層面介紹了 MySQL 的安裝與設定、升級和架構,information_schema、sys_schema、performance_schema 和 mysql_schema,MySQL複製、MySQL 交易、SQL 語句最佳化及架構設計基礎知識。
案例篇:
從硬體和系統、MySQL 架構等方面提出了效能最佳化的十幾個案例,包括:效能測試的基本最佳化概念和最需要關注的效能指標解釋、對 SQL 語句執行慢的基本定位、避免 x86 可用性的一般性方法、節能模式會怎樣影響效能、I/O 儲存作為資料庫最重要的依賴是如何影響資料庫效能的、主備複製不一致可能有哪些原因、字元集不一致會造成哪些效能問題、在實際場景中鎖的爭用是怎樣的。
工具篇:
介紹了在 MySQL 效能最佳化過程中需要用到的各種工具,包括:dmidecode、top、dstat 等硬體和系統排查工具;FIO、sysbench、HammerDB 等壓力測試工具;mysqldump、XtraBackup 等備份工具;Percona、innotop、Prometheus 等監控工具。
--------------------------------------------------------------------------------
效能問題:
本書解決 MySQL 資料庫效能問題,某種程度來說,MySQL 資料庫效能最佳化問題是一個平行處理的問題,歸根究柢是鎖和資源爭用的問題。
其實效能最佳化要做的就是下列事情:
•瞭解基本原理。找到事情的因果關係和依賴關係,儘量讓不相關的事情能平行進行。
•要事第一。找到目前最重要、最需要最佳化的地方,投入時間和精力,不斷去改進與最佳化。
•切中要害。找到耗費時間最長的地方,想盡辦法縮短其時間。
機械思維和大數據思維:
本書的效能最佳化方法論還是工業革命時代的機械思維,簡而言之,就是尋找因果關係,大膽假設,小心求證。現在已經是資訊時代,理應瞭解什麼是資訊理論,解決問題需要利用大數據思維!
讀者對象:
(1)MySQL 初學者。
(2)專門從事 MySQL 工作1~3年的開發人員和運維人員。
(3)資深的 MySQL DBA。