MySQL的SQL語句如何優化?

2021-08-21 18:32:12 字數 570 閱讀 8912

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 語句的形式執行資料庫中的所有查詢操作...