MYSQL筆記(控制優化器的行為)

2021-05-23 21:45:32 字數 779 閱讀 9936

如果不滿意mysql提供的優化方案,可以使用一些查詢提示來控制優化器的行為

1.high_priority和low_priority

決定訪問同乙個表的語句相對與其他語句的優先順序,根據這兩個提示伺服器對訪問表的佇列進行處理,在有表鎖的儲存過程中有效,但在有細粒度鎖或者併發控制的儲存引擎上無效

2.delayed

應用於insert和update,語句立刻返回並將待插入的列放入緩衝區,在表空閒時插入。

3.straight_join

強制聯接順序。

4.sql_small_result和sql_big_result

提示優化器在group by 和distinct查詢中何時以及如何使用臨時表

5.sql_buffer_result

將結果放在臨時表中,並盡快釋放表鎖。

6.sql_cache和sql_no_cache

是否使用查詢快取。

7.sql_calc_found_rows

在有limit子句的時候計算完整的結果集。可以通過found_rows()來取得它得到的行數。

8.for update 和 lock in share mode

控制鎖定,預先鎖定匹配行,只針對有行級鎖的儲存引擎

9.use index,ignore index, force index

是否使用或忽略索引

10.系統變數optimizer_search_depth和optimizer_prune_level

用於控制優化器在選擇執行計畫,合理的設定可以加快選擇的速度

mysql效能優化 伺服器優化(筆記四)

伺服器的硬體效能直接決定著mysql資料庫的效能,硬體的效能瓶頸,直接決定mysql資料庫的執行速度和效率。需要從以下幾個方面考慮 1 配置較大的記憶體。足夠大的記憶體,是提高mysql資料庫效能的方法之一。記憶體的 io比硬碟快的多,可以增加系統的緩衝區容量,使資料在記憶體停留的時間更長,以減少磁...

mysql優化筆記

首先檢視sql執行計畫,確定執行過程是否用到索引,是否全表掃瞄等 例 explain select from servers1 子查詢,in 和 exists的區別 in主要先執行內查詢後與外表比較,exists先查詢外表後與內錶比較判斷是否滿足條件,具體查詢效率取決於查詢條件內錶資料與外表資料大小...

如何控制IE的行為

下面演示乙個控制ie進行重新整理的方法 第一步 建立 shdocvw ishellwindowsptr m spshwinds if m spshwinds null 第二步 獲取當前所有開啟的ie視窗 if m spshwinds 第三步 重新整理ie視窗 pbrowser refresh pbr...