MySQL面試題 索引設計和建立的原則

2021-10-08 19:37:22 字數 410 閱讀 7228

對於經常查詢的字段,建議建立索引

索引不是越多越好,乙個表如果有大量的索引,不僅占用磁碟空間,而且對於寫操作會造成效能底下

避免對經常更新的表進行建立過多的索引,因為當表中有資料更改時,索引也會進行調整和更新,十分消耗系統資源

數量小的表建議不要建立索引,資料量小時索引不僅起不到明顯的優化效果,對於索引結構的維護反而消耗資源

不要在區分度地的字段建立索引,比如性別字段,只有男女,建立索引完全起不到優化效果

定義有外來鍵的資料列一定要建立索引,因為如果外來鍵列上缺少索引會帶來兩個問題:

限制併發性:如果子表外來鍵沒有建立索引,那麼在子表進行dml操作時,將會鎖住整個父表影響效能:首先如果外來鍵上缺少索引,從主表關聯子表的查詢就只能對子表進行全表掃瞄的查詢

mysql建立索引面試題 MySQL索引 面試題

1 索引可以加快資料檢索操作,但會使資料修改操作變慢。每修改資料記錄,索引就必須重新整理一次。為了在某種程式上彌補這一缺陷,許 多sql命令都有乙個delay key write項。這個選項的作用是暫時制止mysql在該命令每插入一條新記錄和每修改一條現有之後立刻對索引進 行重新整理,對索引的重新整...

MySQL索引相關面試題

相信很多人對於mysql的索引都不陌生,索引 index 是幫助mysql高效獲取資料的資料結構。因為索引是mysql中比較重點的知識,相信很多人都有一定的了解,尤其是在面試 現的頻率特別高。樓主自認為自己對mysql的索引相關知識有很多了解,而且因為最近在找工作面試,所以單獨複習了很多關於索引的知...

mysql索引相關面試題

1 儲存引擎主要有 1.myisam 2.innodb,3.memory,4.archive,5.federated 預設為 innodb 引擎。innodb 底層儲存結構為 b 樹,b 樹的每個節點對應 innodb 的乙個 page,page 大小是固定的,一般設為 16k 2 使用場景?1 經...