本文轉自:github
MySQL性能優(yōu)化
影響性能的因素
商業(yè)需求對性能的影響
不合理需求
無用功能堆積
系統(tǒng)架構及實現(xiàn)對性能影響
哪些數(shù)據(jù)不適合放在數(shù)據(jù)庫中
合理的cache
減少數(shù)據(jù)庫交互次數(shù)
過度依賴數(shù)據(jù)庫SQL 語句的功能
重復執(zhí)行相同的SQL
其他常見系統(tǒng)架構和實現(xiàn)問題
其他因素
SQL引起性能問題的原因
Schema 設計對系統(tǒng)的性能影響
硬件環(huán)境對性能影響
數(shù)據(jù)庫系統(tǒng)場景
OLTP
OLAP
綜合考慮
SQL優(yōu)化
SQL優(yōu)化原則
選擇需要優(yōu)化的SQL
Explain和Profile
永遠用小結果集驅動大的結果集
在索引中完成排序
使用最小Columns
使用最有效的過濾條件
避免復雜的JOIN和子查詢
使用Explain和Profiling
Explain命令
profiling的使用
合理使用索引
理解MYSQL的索引
索引的利弊
如何創(chuàng)建索引
單值索引和組合索引
MySQL中索引使用限制
優(yōu)化JOIN
理解JOIN原理
join優(yōu)化原則
其他優(yōu)化
優(yōu)化ORDER BY
優(yōu)化GROUP BY
優(yōu)化distinct
其他優(yōu)化
Query Cache
Innodb_buffer_pool_size
事務優(yōu)化
隔離級別優(yōu)化
innodb_flush_log_at_trx_commit
MySQL復制
MySQL復制機制原理
復制級別
安裝新的MySQL實例
配置主/從
讀寫分離