1 為什麼索引能提高查詢效率
因為建立了索引的字段的資料都是有序資料,查詢有序資料無需遍歷整個資料,非常快,理解這一點是非常重要滴!
2 索引的設計原則
(1)唯一性索引。建立唯一性索引可以更快的檢索出資料,如學生表中學號是唯一的,將學號字段建立索引可以很快的確定某條記錄。
(2)為經常需要排序、分組、連線的字段建立索引。排序會浪費很多時間,所以為經常需要進行此操作的字段建立索引能有效提高查詢效率
(3)為作為查詢條件的字段建立索引。作為查詢條件的字段的查詢速度回影響整個表的查詢速度,需要建立索引
(4)限制索引數目,索引數目不是越多越好。過多的索引會在修改表的時候增大重構的麻煩程度,同時會占用更多的磁碟空間
(5)盡量使用資料量少的索引。如果索引的值很長,查詢效率會受到影響,對乙個varchar(100)型別的字段肯定要比乙個varchar(10)的
字段查詢的效率慢
(6)盡量使用字首來索引。正如上面所說的,如果有必要對該型別的字段進行索引,我們可以設定該索引的長度,只所以該字段的前幾
個值(7)刪除不在使用或很少使用的索引
mysql資料庫優化索引 mysql資料庫索引調優
一 mysql索引 1 磁碟檔案結構 innodb引擎 frm格式檔案儲存表結構,ibd格式檔案儲存索引和資料。myisam引擎 frm格式檔案儲存表結構,myi格式檔案儲存索引,myd格式檔案儲存資料 2 mysql資料庫資料範問原理 innodb btree 1 ibd檔案中主鍵構建b tree...
mysql資料庫優先 MySQL資料庫優化
1.新增索引 mysql資料庫的四類索引 index 普通索引,資料可以重複,沒有任何限制。unique 唯一索引,要求索引列的值必須唯一,但允許有空值 如果是組合索引,那麼列值的組合必須唯一。primary key 主鍵索引,是一種特殊的唯一索引,乙個表只能有乙個主鍵,不允許有空值,一般是在建立表...
mysql資料庫優化
用到啥學啥,mysql資料庫優化成了這幾天的老大難問題。瘋狂的尋找mysql優化的資料,覺得有用的不少,記錄下跟大家分享,對了,這裡僅僅是mysql資料庫本身的優化,沒有寫磁碟之類的 開始之前,介紹倆mysql的命令 show global status 檢視執行狀態的,顯示執行各種狀態值 show...