日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql索引技术_MySQL索引类型

發布時間:2023/12/10 数据库 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql索引技术_MySQL索引类型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

首先請查看不同引擎支持的索引類型:存儲引擎簡介?。

聚集索引和非聚集索引概念見:聚集索引與非聚集索引?和?聚集索引?。 覆蓋索引見:覆蓋索引?。

1. InnoDB的每一個表都會有一個聚集索引(第一索引,主鍵索引)。InnoDB按照主鍵進行聚集,如果沒有定義主鍵,InnoDB會試著使用唯一的非空索引來代替。如果沒有這種索引,InnoDB就會定義隱藏的主鍵然后在上面進行聚集。

2. InnoDB不支持非主鍵的聚集索引,默認在主鍵上建立聚集索引(因為有了主鍵就有了索引,大量insert速度會變慢?先disable主鍵再insert?)。如果想在某列建立聚集索引,那么只能將該列設為主鍵。

3. 聚集索引采用B+Tree。其他索引不采用B+Tree。如果其他索引使用B-Tree,則葉子節點中存儲的數據為主鍵,即先用B-Tree找到該列所屬的主鍵(存儲在葉子節點上),再主鍵通過B+Tree找到該行中所有所需數據(叫做回表?)。

4. B-Tree是索引和數據不同文件存儲?應該都是存儲在同一文件中。

5. 聚集的覆蓋索引默認存在。非聚集覆蓋索引的建立需要查詢列包含在主鍵中(組合主鍵,非最左),并對查詢列建立索引。

創建索引語法如下:? ? CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name? ? [USING index_type]? ? ON tbl_name (index_col_name,...)? ? index_col_name:? ? col_name [(length)] [ASC | DESC]?索引的存儲類型目前只有兩種(btree和hash),具體和表的模式相關:? ? myisam???? btree? ? innodb????? btree? ? memory/heap hash,btree

1.

alter table table_name add index index_name (column_list) ; ? ? ? 普通索引

alter table table_name add unique (column_list) ; ? ? ? ? ? ? ? ? ? ? ? ? ?唯一索引

alter table table_name add primary key (column_list) ; ? ? ? ? ? ? ? ? ?主鍵索引

其中包括普通索引、UNIQUE索引和PRIMARY KEY索引3種創建索引的格式,table_name是要增加索引的表名,column_list指出對哪些列進行索引,多列時各列之間用逗號分隔。索引名index_name可選,缺省時,MySQL將根據第一個索引列賦一個名稱。

2.

create index index_name on table_name (column_list) ;

create unique index index_name on table_name (column_list) ;

說明:table_name、index_name和column_list具有與ALTER TABLE語句中相同的含義,索引名不可選。另外,不能用CREATE INDEX語句創建PRIMARY KEY索引。

3. 刪除索引

drop index index_name on table_name ;

alter table table_name drop index index_name ;

alter table table_name drop primary key ;

其中,在前面的兩條語句中,都刪除了table_name中的索引index_name。而在最后一條語句中,只在刪除PRIMARY KEY索引中使用,因為一個表只可能有一個PRIMARY KEY索引,因此不需要指定索引名。如果沒有創建PRIMARY KEY索引,但表具有一個或多個UNIQUE索引,則MySQL將刪除第一個UNIQUE索引。

總結

以上是生活随笔為你收集整理的mysql索引技术_MySQL索引类型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。