电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Mysql索引常見問題匯總

瀏覽:149日期:2023-10-10 13:24:44

Q1:數據庫有哪些索引?優缺點是什么?

1.B樹索引:大多數數據庫采用的索引(innoDB采用的是b+樹)。能夠加快訪問數據的速度,尤其是范圍數據的查找非常快。缺點是只能從索引的最左列開始查找,也不能跳過索引中的列,如果查詢中有某個列用到了范圍查詢,則右邊所有列都無法使用索引優化查找。

2.哈希索引:基于哈希表實現。在MySQL中,只有Memory引擎顯式的支持哈希搜索。哈希查找的速度非常快,但哈希索引只包含哈希值和行指針,不存儲字段值,所以不能用索引中的值來避免讀取行,也不能進行排序。由于哈希索引使用的是索引列的全部內容來計算哈希值的,所以不支持部分所有列匹配查找。哈希只支持等值比較,不支持任何范圍查詢。一旦哈希沖突很多的話,維護成本非常高。innoDB支持“自適應哈希索引”(adaptive hash index)。

3.全文索引:全文索引是一種特殊類型的索引,它查找的是文本中的關鍵字,而不是比較索引的值。最初只能在MyISAM上使用,5.6.24以后innoDB也支持了全文索引。全文索引的查詢要使用Match....against,在相同的列上同時創建全文搜索和基于值的B-Tree索引不會有沖突。

4.空間數據索引(R-tree索引),MyISAM支持R樹索引,好處是無需前綴查詢,會從所有緯度來索引數據,可以用作地理數據的存儲;缺點是必須使用MySQL的GIS相關函數如MBRCONTAINS( )等來維護數據,但由于MySQL中的GIS并不完善,因此大多數人不會使用這個特性。

Q2:為什么不實用二叉查找樹或者紅黑樹作為數據庫索引。

二叉樹在處理海量數據時,樹的高度太高,雖然索引效率很高,達到logN,但會進行大量磁盤io,得不償失。而且刪除或者插入數據可能導致數據結構改變變成鏈表,需要增進平衡算法。而紅黑樹,插入刪除元素的時候會進行頻繁的變色和旋轉(左旋,右旋),很浪費時間。但是當數據量很小的時候,完全可以放入紅黑樹中,此時紅黑樹的時間復雜性比b樹低。因此,綜上考慮,數據庫最后選擇了b樹作為索引。

Q3:B tree和B+ tree應用場景:

1.B樹常用于文件系統,和少部分數據庫索引,比如mongoDB。

2.B+樹主要用于mysql數據庫索引。

Q4:B+ tree對比B tree的優點

B樹的每個節點除了存儲指向 子節點的索引外,還要存儲data域,因此單一節點指向子節點的索引并不是很多,樹的高度較高,磁盤io次數較多。B+樹的高度更低,且所有data都存儲在葉子節點,葉子節點都處于同一層,因此查詢性能穩定,便于范圍查找。

Q5:多列排序時使用索引的坑

A key_part specification can end with ASC or DESC. These keywords are permitted for future extensions for specifying ascending or descending index value storage. Currently, they are parsed but ignored; index values are always stored in ascending order.

根據Mysql文檔的說明,創建索引的時候,可以加上asc或者desc,例如:add index idx(a asc,b desc).但是實際Mysql是會忽略的(好坑。。。)好像8.0版本之后支持desc了。

這會有什么影響呢?

假如有列test1和test2,都是int類型。

我們創建索引``idx1(test1,test2),假如我們要按test1和test2排序,例如SQL

explain select * from table order by test1 ,test2 limit 1;

可以使用索引的排序:

order by test1 order by test1 desc order by test1,test2 order by test1 desc,test2 desc

不可以使用索引的排序:

order by test1,test2,desc order by test1 desc,test2

因為索引不支持desc,所以多列的索引是按全部列的升序存儲的。所以只排序一列,全部列升序,全部列降序,都能用索引。但是第一列用升序,第二列用降序,或者第一列降序,第二列用升級,都不能使用索引。

以上就是Mysql索引常見問題匯總的詳細內容,更多關于MySQL 索引的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 紫外可见光分光度计-紫外分光度计-分光光度仪-屹谱仪器制造(上海)有限公司 | 众品地板网-地板品牌招商_地板装修设计_地板门户的首选网络媒体。 | 齿轮减速马达一体式_蜗轮蜗杆减速机配电机-德国BOSERL齿轮减速电动机生产厂家 | 青岛美佳乐清洁工程有限公司|青岛油烟管道清洗|酒店|企事业单位|学校工厂厨房|青岛油烟管道清洗 插针变压器-家用电器变压器-工业空调变压器-CD型电抗器-余姚市中驰电器有限公司 | 生物风-销售载体,基因,质粒,ATCC细胞,ATCC菌株等,欢迎购买-百风生物 | 湖州织里童装_女童男童中大童装_款式多尺码全_织里儿童网【官网】-嘉兴嘉乐网络科技有限公司 | 小学教案模板_中学教师优秀教案_高中教学设计模板_教育巴巴 | 合同书格式和范文_合同书样本模板_电子版合同,找范文吧 | 超声波破碎仪-均质乳化机(供应杭州,上海,北京,广州,深圳,成都等地)-上海沪析实业有限公司 | 中空玻璃生产线,玻璃加工设备,全自动封胶线,铝条折弯机,双组份打胶机,丁基胶/卧式/立式全自动涂布机,玻璃设备-山东昌盛数控设备有限公司 | 高速龙门架厂家_监控杆_多功能灯杆_信号灯杆_锂电池太阳能路灯-鑫世源照明 | 酒吧霸屏软件_酒吧霸屏系统,酒吧微上墙,夜场霸屏软件,酒吧点歌软件,酒吧互动游戏,酒吧大屏幕软件系统下载 | 防腐木批发价格_深圳_惠州_东莞防腐木厂家_森源(深圳)防腐木有限公司 | 无线联网门锁|校园联网门锁|学校智能门锁|公租房智能门锁|保障房管理系统-KEENZY中科易安 | 内窥镜-工业内窥镜厂家【上海修远仪器仪表有限公司】 | 杭州中央空调维修_冷却塔/新风机柜/热水器/锅炉除垢清洗_除垢剂_风机盘管_冷凝器清洗-杭州亿诺能源有限公司 | GEDORE扭力螺丝刀-GORDON防静电刷-CHEMTRONICS吸锡线-上海卓君电子有限公司 | 医养体检包_公卫随访箱_慢病随访包_家签随访包_随访一体机-济南易享医疗科技有限公司 | 舞台木地板厂家_体育运动木地板_室内篮球馆木地板_实木运动地板厂家_欧氏篮球地板推荐 | 阴离子_阳离子聚丙烯酰胺厂家_聚合氯化铝价格_水处理絮凝剂_巩义市江源净水材料有限公司 | 培训中心-海南香蕉蛋糕加盟店技术翰香原中心官网总部 | 小型数控车床-数控车床厂家-双头数控车床 | 衬氟止回阀_衬氟闸阀_衬氟三通球阀_衬四氟阀门_衬氟阀门厂-浙江利尔多阀门有限公司 | 工控机,嵌入式主板,工业主板,arm主板,图像采集卡,poe网卡,朗锐智科 | 振动筛-交叉筛-螺旋筛-滚轴筛-正弦筛-方形摇摆筛「新乡振动筛厂家」 | 无锡网站建设-做网站-建网站-网页设计制作-阿凡达建站公司 | 超声波焊接机,振动摩擦焊接机,激光塑料焊接机,超声波焊接模具工装-德召尼克(常州)焊接科技有限公司 | 一路商机网-品牌招商加盟优选平台-加盟店排行榜平台 | 智能汉显全自动量热仪_微机全自动胶质层指数测定仪-鹤壁市科达仪器仪表有限公司 | 雨水收集系统厂家-雨水收集利用-模块雨水收集池-徐州博智环保科技有限公司 | 希望影视-高清影视vip热播电影电视剧免费在线抢先看 | 小型手持气象站-空气负氧离子监测站-多要素微气象传感器-山东天合环境科技有限公司 | 首页|成都尚玖保洁_家政保洁_开荒保洁_成都保洁 | 耐高温风管_耐高温软管_食品级软管_吸尘管_钢丝软管_卫生级软管_塑料波纹管-东莞市鑫翔宇软管有限公司 | 铝板冲孔网,不锈钢冲孔网,圆孔冲孔网板,鳄鱼嘴-鱼眼防滑板,盾构走道板-江拓数控冲孔网厂-河北江拓丝网有限公司 | 辽宁资质代办_辽宁建筑资质办理_辽宁建筑资质延期升级_辽宁中杭资质代办 | 钢丝绳探伤仪-钢丝绳检测仪-钢丝绳探伤设备-洛阳泰斯特探伤技术有限公司 | 钢绞线万能材料试验机-全自动恒应力两用机-混凝土恒应力压力试验机-北京科达京威科技发展有限公司 | 工业冷却塔维修厂家_方形不锈钢工业凉水塔维修改造方案-广东康明节能空调有限公司 | 磁力反应釜,高压釜,实验室反应釜,高温高压反应釜-威海自控反应釜有限公司 | 保定市泰宏机械制造厂-河北铸件厂-铸造厂-铸件加工-河北大件加工 |