1. 程式人生 > >一條sql執行過長的時間,你如何優化,從哪些方面?

一條sql執行過長的時間,你如何優化,從哪些方面?

xpl 主從 plain 查詢 哪些 數量 速度 讀寫分離 進行

1、查看sql是否涉及多表的聯表或者子查詢,如果有,看是否能進行業務拆分,相關字段冗余或者合並成臨時表(業務和算法的優化)

2、涉及鏈表的查詢,是否能進行分表查詢,單表查詢之後的結果進行字段整合

3、如果以上兩種都不能操作,非要鏈表查詢,那麽考慮對相對應的查詢條件做索引。加快查詢速度

4、針對數量大的表進行歷史表分離(如交易流水表)

5、數據庫主從分離,讀寫分離,降低讀寫針對同一表同時的壓力,至於主從同步,mysql有自帶的binlog實現 主從同步

6、explain分析sql語句,查看執行計劃,分析索引是否用上,分析掃描行數等等

7、查看mysql執行日誌,看看是否有其他方面的問題

一條sql執行過長的時間,你如何優化,從哪些方面?