1) 現場抓出慢查詢語句 show full processlist;
2) 配置引數:
slow_query_log_file = on 慢查詢開啟開關
long_query_time =2 記錄大於2秒的sql語句
log_queries_not_using_indexes = on 沒有使用索引的sql語句
min_examined_row_limit = 800 記錄結果集大於800行的sql語句
3) 按天輪詢:slow_log.log
4) 慢查詢日誌分析工具--mysqlsla或pt-query-digest(推薦)
5) 每天晚上0點定時分析慢查詢 發到核心開發 dba分析 及高階運維 cto的郵箱
dba分析給出優化建議--核心開發確認更改--dba線上操作處理
6 )定期使用pt-duplicate-key-checker檢查並刪除++
定期使用pt-index-usage 工具檢查並刪除
7 )使用explain及set profile優化sql語句
Mysql優化 SQL語句優化
索引優化 where 字段 組合索引 最左字首 索引下推 非選擇行 不加鎖 索引覆蓋 不回表 on兩邊 排序 分組 explain分析語句情況,看建立索引沒,或者建立錯誤,響應時間長的話可以看下慢查詢日誌 盡量不要用 查所有字段的話,select查詢列中的字段如果沒有索引的話,會造成回表 limit...
SQL語句如何優化?
核心思想 多快好省 多 查詢的不漏是基本的正確準確需要 快 減少不必要的查詢,如全表掃瞄和空值查詢 好 不過度影響查詢效果的情況下,資料可以較好地展示收集 省 減少資源消耗 具體實現舉例 1 查詢語句中不要使用select 2 儘量減少子查詢,使用關聯查詢 left join,right join,...
MySQL優化(二) 優化SQL語句
2.優化子查詢,派生表和檢視引用 3.優化information schema查詢 4.優化資料變更宣告 5.優化資料庫許可權 6.其他優化技巧 資料庫應用程式的核心邏輯是通過sql語句執行的,無論是直接通過直譯器發出還是通過api在後台提交。查詢以select 語句的形式執行資料庫中的所有查詢操作...