1、慢查詢分析相關的優化
通過命令檢視慢查詢最長時間,一般預設10s,對於現代高實時系統來講,乙個查詢要10秒鐘是不可接受的,所以我們對慢查詢先進行監控,然後才能進行優化;
show variables like 'long_query_time';
通常我們會把這個時間設定在3秒以內;
set global long_query_time=2;
檢視慢查詢日誌記錄是否開啟,以及慢查詢檔案的路徑,如果沒有開啟則可以開啟,同時還可以設定為儲存日誌到table;
show variables like 'slow%'
2、查詢快取相關,在有些管理端會建議你開啟query cache,但是如果你的系統是實時性較高的系統,則建議你不要開啟,建議增加單獨的快取層。
3、分析sql語句使用索引的情況
expain出來的資訊有10列,分別是id、select_type、table、type、possible_keys、key、key_len、ref、rows、extra
概要描述:
id:選擇識別符號
select_type:表示查詢的型別。
table:輸出結果集的表
partitions:匹配的分割槽
type:表示表的連線型別
possible_keys:表示查詢時,可能使用的索引
key:表示實際使用的索引
key_len:索引欄位的長度
ref:列與索引的比較
rows:掃瞄出的行數(估算的行數)
filtered:按表條件過濾的行百分比
extra:執**況的描述和說明
下圖是對explain的詳細解釋,關鍵在於type引數,其值至少要達到range級別
在這裡介紹乙個分析工具jet profile,能把很多手動需要做的工作自動化去完成,節省時間,軟體的授權費用也不是很貴,當然如果從長遠的考慮來講,公司內部應該有自己的類似的自動化分析工具;
今天先講到這裡,且聽下回分解。
MySQL優化相關
慢查詢 檢視是否開啟慢查詢日誌 show variables like slow query log 設定沒有索引的記錄到慢查詢日誌 set global log queries not using indexes on 檢視超過多長時間的sql進行記錄到慢查詢日誌 show variables l...
mysql 相關引數 Mysql相關引數優化
mysql優化 配置在 mysqld 段裡 innodb buffer pool size 4g 除去redis所占用記憶體,可以設為可用記憶體的一半 slow query log 1 long query time 1 最大連線數優化 show variables like max connect...
mysql的相關優化
mysql的優化 mysql優化三大方向 優化mysql所在伺服器核心。對mysql配置引數進行優化 my.cnf 此優化需要進行壓力測試來進行引數調整。對sql語句以及表優化。伺服器核心方面優化 網路引數配置 網路引數配置需要修改配置檔案 etc sysctl.conf,可以在配置檔案後面新增一下...