第1章基礎\t1
1.1語法錯誤\t1
1.2SELECT返回錯誤結果\t5
1.3當錯誤可能由之前的更新引起時\t10
1.4獲取查詢信息\t15
1.5追蹤數據中的錯誤\t18
1.6慢查詢\t23
1.6.1通過EXPLAIN的信息調優查詢\t23
1.6.2表調優和索引\t29
1.6.3何時停止調優\t33
1.6.4配置選項的影響\t33
1.6.5修改數據的查詢\t35
1.6.6沒有高招\t37
1.7當服務器響應的時候\t37
1.8特定於存儲引擎的問題及解決方案\t42
1.8.1MyISAM損壞\t43
1.8.2InnoDB數據損壞\t45
1.9許可問題\t47
第2章你不孤單:並發問題\t50
2.1鎖和事務\t50
2.2鎖\t51
2.2.1表鎖\t52
2.2.2行鎖\t54
2.3事務\t59
2.3.1隱藏查詢\t60
2.3.2死鎖\t65
2.3.3隱式提交\t68
2數據鎖\t69
2.5並發如何影響性能\t72
2.5.1為並發問題監控InnoDB事務\t73
2.5.2為並發問題監控其他資源\t73
2.6其他鎖問題\t74
2.7復制和並發\t82
2.7.1基於語句的復制問題\t82
2.7.2混合事務和事務表\t86
2.7.3從服務器上的問題\t87
2.8高效地使用MySQL問題排查工具\t89
2.8.1SHOW PROCESSLIST和INFORMATION_SCHEMA.
PROCESSLIST表\t89
2.8.2SHOW ENGINE INNODB STATUS和InnoDB監控器\t91
2.8.3INFORMATION_SCHEMA中的表\t93
2.8.4PERFORMANCE_SCHEMA中的表\t94
2.8.5日志文件\t97
第3章配置選項對服務器的影響\t100
3.1服務器選項\t101
3.2可更改服務器運行方式的變量\t104
3.3有關硬件資源限制的選項\t105
3.4使用--no-defaults選項\t106
3.5性能選項\t107
3.6欲速則不達\t107
3.7SET語句\t108
3.8如何檢查變更是否存在一些影響\t108
3.9變量介紹\t109
3.9.1影響服務器與客戶端行為的選項\t110
3.9.2與性能相關的選項\t124
3.9.3計算選項的安全值\t133
第4章MySQL環境\t138
4.1物理硬件限制\t138
4.1.1內存\t138
4.1.2處理器與內核\t139
4.1.3磁盤I/O\t140
4.1.4網絡帶寬\t141
4.1.5延遲效應的例子\t142
4.2操作繫統限制\t142
4.3其他軟件影響\t144
第5章復制故障診斷\t145
5.1查看從服務器狀態\t146
5.2與I/O線程有關的復制錯誤\t148
5.3與SQL線程有關的問題\t155
5.3.1當主從服務器上數據不同的時候\t156
5.3.2從服務器上的循環復制以及復制寫入\t157
5.3.3不完整或被改變的SQL語句\t158
5.3.4主從服務器上出現的不同錯誤\t159
5.3.5配置\t159
5.3.6當從服務器遠遠落後主服務器時\t159
第6章問題排查技術與工具\t161
6.1查詢\t161
6.1.1慢查詢日志\t162
6.1.2可定制的工具\t163
6.1.3MySQL命令行接口\t165
6.2環境的影響\t169
6.3沙箱\t169
6.4錯誤與日志\t173
6.4.1再論錯誤信息\t173
6.4.2崩潰\t173
6.5收集信息的工具\t177
6.5.1Information Schema\t177
6.5.2InnoDB信息概要表\t178
6.5.3InnoDB監控器\t180
6.5.4Performance Schema\t187
6.5.5Show [GLOBAL] STATUS\t190
6.6本地化問題(最小化測試用例)\t191
6.7故障排除的一般步驟\t192
6.8測試方法\t195
6.8.1在新版本中嘗試查詢\t195
6.8.2檢查已知的bug\t195
6.8.3變通方法\t196
6.9專用的測試工具\t198
6.9.1基準工具\t198
6.9.2Gypsy\t201
6.9.3MySQL測試框架\t202
6.10維護工具\t204
第7章最佳實踐\t207
7.1備份\t207
7.1.1計劃備份\t208
7.1.2備份類型\t208
7.1.3工具\t209
7.2收集需要的信息\t210
7.3測試\t211
7.4預防\t212
7.4.1權限\t212
7.4.2環境\t212
7.5三思而後行\t213
附錄信息資源\t214