Mysql 索引和執行計畫

2022-06-25 07:36:11 字數 1503 閱讀 4441

平衡二叉樹示意圖。

聚簇索引

輔助索引

單列索引

聯合索引:i ndex(a,b,c) 查詢條件一定要帶a才能走索引(最左列)

字首索引

由於索引列,字元太長,占用空間太大,索引樹高度增高。

查詢時需要檢索更多的索引也。

mysql中建議3,4層。

所以可以選擇大字段的前部分作索引。

2.資料庫行過多

1.索引欄位較長,字首索引。

2.資料行過多:分割槽表,歸檔表(pt-archive),分布式架構。

3.資料型別;選擇合適的資料型別。

索引常建在 where ,group by ,order by,join on ...的條件。

查詢索引

desc tbxx;
key:

pri 聚簇索引

mul 輔助索引

uni 唯一索引

查詢索引詳細資訊。

show index from user;
建立索引

alter table user add index idx_pd(pwd);
聯合索引

alter table user add index idx_pd(a,b);
字首索引,(前5個字元組成索引)

alter table user add index idx_pd(district(5));
刪除索引

alter table user drop index idx_pd;
在查詢語句前加desc或explain可檢視執行計畫、

table :此次語句涉及的表

type : 查詢型別,全表掃,索引掃

possible_keys:可能用到的索引

key : 最後選擇的索引

key_len : 聯合索引,索引覆蓋長度

字元 utf-8 乙個字元最大佔3個字元

​ not null null

char(10) 3x10 3x10+1

varchar(10) 3x10+2 3x10+2+1

rows : 此次查詢需要掃瞄的行數

extra :額外的資訊

MySQL索引和執行計畫

索引 index 是幫助mysql高效獲取資料的資料結構。可以得到索引的本質 索引是資料結構 右側是資料表,一共有兩列七條記錄,最左邊的是資料記錄的實體地址 show index from table namecreate unique index indexname on mytable colu...

Mysql 索引和執行計畫

平衡二叉樹示意圖。聚簇索引 輔助索引 單列索引 聯合索引 i ndex a,b,c 查詢條件一定要帶a才能走索引 最左列 字首索引 由於索引列,字元太長,占用空間太大,索引樹高度增高。查詢時需要檢索更多的索引也。mysql中建議3,4層。所以可以選擇大字段的前部分作索引。2.資料庫行過多 1.索引欄...

mysql索引執行計畫 MySQL索引及執行計畫

mysql索引及執行計畫 索引合理的建立索引可以加快資料查詢,例如,學校圖書管為每一本書編號,根據編號可以快速鎖定一本書所在位置。mysql索引預設b 樹索引。索引雖然能夠提高檢索效率,但同時也會降低更新的速度,因為insert update delete也會操作索引檔案,會調整因為更新等操作帶來的...