1,FULLTEXT:全文索引,目前只有MyISAM引擎支持。可以在CREATE TABLE、ALTER TABLE和CREATE INDEX中使用,但目前只有CHAR、VARCHAR和TEXT列可以創建全文索引。
2.HASH:由於其唯壹性(差不多100%唯壹性)和相似的鍵值對,HASH非常適合作為索引。哈希索引可以壹次性定位,不需要像樹索引那樣逐層查找,所以效率很高。
3.BTREE:BTREE索引是按照壹定的算法將索引值存儲在樹狀數據結構(二叉樹)中的方法。每個查詢從樹的入口根開始,然後依次遍歷節點以獲得葉子。這是MySQL中默認且最常用的索引類型。
4.RTREE:RTREE在MySQL中很少使用,只支持geometry數據類型。只有幾個存儲引擎支持這種類型:MyISAM、BDb、InnoDb、NDb和Archive。
索引簡介:
在關系數據庫中,索引是壹種獨立的物理存儲結構,它對數據庫表中壹列或多列的值進行排序。它是表中壹列或多列的值的集合,以及指向數據頁的邏輯指針的相應列表,這些數據頁在物理上標識表中的這些值。索引的作用相當於書籍的目錄,妳可以根據目錄中的頁碼快速找到需要的內容。
索引提供指向存儲在表的指定列中的數據值的指針,然後根據您指定的排序順序對這些指針進行排序。數據庫使用索引查找特定值,然後跟隨指針查找包含該值的行。這樣可以讓表對應的SQL語句執行得更快,快速訪問數據庫表中的具體信息。
當表中有大量記錄時,如果要查詢表,首先要搜索信息的方法是搜索整個表,也就是把所有的記錄壹條壹條拿出來,和查詢條件進行比較,然後返回符合條件的記錄。這將消耗大量的數據庫系統時間,並導致大量的磁盤I/O操作。