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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

InnoDB和MyISAM是否支持hash索引

發(fā)布時間:2025/3/21 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 InnoDB和MyISAM是否支持hash索引 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

今天和同學(xué)探討說MySQL哪些存儲引擎支持hash索引,因?yàn)樗磿甅ySQL版本和現(xiàn)有的MySQL版本有出入,故中間出了點(diǎn)歧義。所以就手動敲了一下代碼,測試了一下MySQL8.0中的存儲引擎是如何支持hash索引的。

我們都知道MySQL最常用的存儲引擎為InnoDB和MyISAM。它們默認(rèn)的存儲引擎都是B-Tree(實(shí)質(zhì)為B+Tree)。他們本身都是不支持hash索引的。但是我們在建表時給某些字段添加hash索引,或者后期為某表添加hash索引時,如果他們的存儲引擎為InnoDB或MyISAM,則sql腳本本身是不會報(bào)錯的,但是我們會發(fā)現(xiàn),該hash索引字段的index_type仍然為BTREE。如果存儲引擎為Memory,因?yàn)檫@個引擎本是就是支持hash索引的,索引其hash索引字段的index_type自然為HASH。OK,say is one thing,coding is another thing.展示例子如下:

1、InnoDB測試用例:

已有users表,存儲引擎為InnoDB

1.1、為useraddress字段添加hash索引:

alter table users add index idx_hash_userAddress using hash(useraddress);

1.2、查看表定義:

show create table users;

結(jié)果如下:

CREATE TABLE `users` ( `id` int(7) NOT NULL AUTO_INCREMENT COMMENT '用戶ID', `userName` varchar(50) DEFAULT NULL COMMENT '用戶名', `userAge` int(11) DEFAULT NULL COMMENT '年齡', `userAddress` varchar(200) DEFAULT NULL COMMENT '家庭住址', `state_id` int(11) DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_state_id` (`state_id`), KEY `idx_hash_userAddress` (`userAddress`), FULLTEXT KEY `userAddress` (`userAddress`,`userName`) ) ENGINE=InnoDB AUTO_INCREMENT=2016000010 DEFAULT CHARSET=utf8

可以看到我們剛剛創(chuàng)建的hash索引,后面并沒有using hash,所以依然是B-Tree索引。

1.3、查看表的索引:

show index from users;

同時,我們還能發(fā)現(xiàn)InnoDB8.0是支持全文索引的,即為index_type為FULLTEXT的索引。

2、MyISAM測試用例:

2.1、建表:

create table testHashInMyisam( views char(5) not NULL )engine=myisam

2.2、查看表定義:

show create table testHashInMyisam;

結(jié)果如下:

CREATE TABLE `testHashInMyisam` ( `views` char(5) NOT NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8

2.3、為表添加hash索引:

alter table testHashInMyisam add index idx_hash_views using hash(views);

2.4、查看表定義:

show create table testHashInMyisam;

結(jié)果如下:

CREATE TABLE `testHashInMyisam` (`views` char(5) NOT NULL,KEY `idx_hash_views` (`views`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8

2.5、查看表索引:

show index from testHashInMyisam

3、Memory測試用例:

3.1、建表:

create table testHashInMemory( views char(5) not NULL )engine=Memory

3.2、查看建表語句:

show create table testHashInMemory;

結(jié)果如下:

CREATE TABLE `testHashInMemory` ( `views` char(5) NOT NULL ) ENGINE=MEMORY DEFAULT CHARSET=utf8

3.3、給表添加hash索引

alter table testHashInMemory add index idx_hash_views using hash(views);

3.4、查看表定義:

show create table testHashInMemory;

結(jié)果如下:

CREATE TABLE `testHashInMemory` ( `views` char(5) NOT NULL, KEY `idx_hash_views` (`views`) USING HASH ) ENGINE=MEMORY DEFAULT CHARSET=utf8

3.5、查看表的索引:

show index from testHashInMemory;

不過也不要失望,雖然常見存儲引擎并不支持 Hash 索引,但 InnoDB 有另一種實(shí)現(xiàn)方法:自適應(yīng)哈希索引。InnoDB 存儲引擎會監(jiān)控對表上索引的查找,如果觀察到建立哈希索引可以帶來速度的提升,則建立哈希索引。

我們可以通過 SHOW ENGINE INNODB STATUS 來查看當(dāng)前自適應(yīng)哈希索引的使用狀況

轉(zhuǎn)載于:https://www.cnblogs.com/yifanSJ/p/9170317.html

總結(jié)

以上是生活随笔為你收集整理的InnoDB和MyISAM是否支持hash索引的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产乱真实合集 | 亚洲va韩国va欧美va精品 | www精品国产 | 亚洲第一综合网 | 日韩经典午夜福利发布 | 中日韩在线观看视频 | 国产精品久久久免费视频 | 欧美性插动态图 | 日韩欧美中文字幕一区二区 | 国产三区av| 日本亚洲精品 | 97人妻人人揉人人躁人人 | 国产三级久久久久 | 爱爱高潮视频 | 先锋影音在线 | 欧美大黄视频 | 亚洲最大在线视频 | 日韩欧美精品一区 | 性av免费| 五月天激情社区 | 亚洲美女久久 | 亚洲国产丝袜 | 嫩草在线播放 | 欧美日韩亚洲高清 | 久久免费毛片 | 性涩av| 亚洲国产影视 | 日韩毛片在线观看 | 正在播放国产一区 | 欧美狂猛xxxxx乱大交3 | 亚洲图片欧美激情 | 香蕉av一区| 国产麻豆一区二区三区在线观看 | 视频二区 | 六月丁香激情综合 | 亚洲一级Av无码毛片久久精品 | 国产精品99视频 | 成人免费在线 | 精品少妇人妻一区二区黑料社区 | jizzjizz在线| 午夜伦理福利视频 | 亚洲成a人v | 五月丁香综合激情六月久久 | 国产xxx在线 | 国产成人无码一区二区在线观看 | 日韩欧美中文字幕一区二区三区 | 日本不卡影院 | 国产免费无遮挡吸奶头视频 | 涩涩涩涩av| 五月婷婷激情小说 | 精品亚洲乱码一区二区 | 亚洲视频一区在线 | 日韩一区二区三区在线 | 亚洲成人av电影网站 | 亚洲毛片精品 | 午夜亚洲AV永久无码精品蜜芽 | 亚洲欧美在线播放 | 日韩片在线 | 欧美一级视频免费观看 | 国产午夜精品福利视频 | 亚洲成人无码久久 | 精品国产999久久久免费 | 免费大片黄在线观看视频网站 | 国产精品偷伦视频免费观看了 | 日韩精品一 | 国产高清视频免费观看 | 久久草视频在线 | 免费黄色三级网站 | 国产婷婷一区二区 | 青青草视频网站 | 成人区精品一区二区婷婷 | 91麻豆国产福利精品 | 久久人人爽人人爽人人片av免费 | 午夜色图 | 日本午夜精华 | 美女毛片在线 | 小色哥网站 | 久久精品成人av | 日韩三级黄色 | 欧美一区二区三区四区五区六区 | 福利二区三区 | 日本在线一区二区三区 | 免费超碰在线观看 | 欧美性久久久久 | tube极品少妇videos | 每日更新在线观看av | 91香蕉在线视频 | 亚洲天堂网址 | 丝袜美腿亚洲一区二区图片 | 亚州黄色网址 | 一级片aaa | 国产亚洲精品久久久久久 | 男女羞羞动态图 | 网站国产 | 91网站在线看 | 色丁香六月 | 国产不卡在线观看 | 男女裸体无遮挡做爰 | 免费黄色网址在线观看 |