mysql效能優化

2021-10-24 08:53:11 字數 955 閱讀 9851

1、 mysql query optimizer

mysql自己的優化策略,若想定製,需要重寫mysql,一般不會用

2、mysql常見瓶頸

dba或者運維配置中問題

2、 explain

開發人員真正的需要分析的

六要點解析:

1、 能查詢表的讀取順序,即指id

2、 select_type

3、 possible_keys

4、 key

5、 各種巢狀,簡單查詢,子查詢等邏輯關係

6、 row

explain包含的資訊

1、 id

id 相同:

執行順序t1 >> t3 >> t2

並非書寫的from後的順序t1, t2, t3

id 不同:

id相同不同,同時存在

如圖,dericed2: 2為id表示id為2的語句執行生成的衍生表

小表驅動大表原則

3、 select_type

4、 table

顯示這一行的資料是關於哪一張表的

5、 type

八種值:

顯示查詢使用了何種型別

從最好到最差依次是:

system >> const>>eq_ref>>ref>>range>>index>>all

一般來說,得保證查詢至少達到range級別,最好能達到ref

6、 possible_keys 和 key

覆蓋索引,如下圖,所要查詢的字段恰巧和該錶所建立的索引的字段相同,包括個數順序

7、 key_len

8、 ref

9、 rows

10、 extra

可能出現的屬性,共八種,為多值

理解一:邏輯上理解

理解二:資料結構上理解

使用了where,但是執行時不成立

case

執行順序:

mysql效能優化 mysql效能優化

優化方式 1.空間換時間 冗餘 2.時間換空間 字段優先使用型別 int date char varchar text 索引型別 btree索引 hash索引 索引的葉子下,存放乙個資訊指向所在行的資料位址。btree有利於範圍查詢,hash有利於精確查詢。btree用的更多一些。btree索引的常...

mysql的效能優化 mysql效能優化

檢視安裝指令碼 select version 非互動式超時時間,如jdbc show global variables like wait timeout 互動式超時時間,如資料庫工具 show global variables like interactive timeout show sessi...

mysql 效能優化 命令 mysql效能優化

發現問題 當發現程式執行比較慢的時候,首先排除物力資源問題之後,就將注意力轉向mysq資料庫 1 首先確定執行慢的sql語句 mysql show full processlist 2 確認低效的查詢 多次執行第一步發現time耗費大的sql語句。檢視耗費的時間。3 分析效能 為sql生成乙個執行計...