ag官网博彩平台游戏技巧_五分钟让你昭彰MySQL是怎样遴荐索引的

发布日期:2023-10-30 06:23    点击次数:183

ag官网博彩平台游戏技巧_五分钟让你昭彰MySQL是怎样遴荐索引的

ag官网博彩平台游戏技巧_

今天就从这个问题来聊聊MySQL遴荐索引时王人作念一些什么事情沙巴在线。

[[434553]]

一、怎样遴荐索引 影响优化器的几不祥素

一条查询SQL试验需要经过连结器、分析器、优化器、试验器,而遴荐索引的重负就交给了优化器。

优化器在多个索引中遴荐野心是为了找出试验代价最低的决议。

影响优化器遴荐无非就这几个要素,扫描行数、是否使用了临时表、是否使用文献排序。

临时表、文献排序这个两个点会在后期著述给行家冉冉引出,今天只聊扫描行数。

扫描行数越少则看望磁盘数据的次数就越少,浪费的CPU资源越少。

那么这个扫描行数是从何处取的呢?

扫描行数从何而来?

创建索引一直提议行家给辨认度高的列开拓索引,在一个索引上不同值的个数称之为基数(cardinality)。

赛事预测

使用show index from table_name不错放哨每个索引的基数是几许。 沙巴在线

五分钟,让你昭彰MySQL是怎样遴荐索引 

索引基数

索引基数怎样诡计

MySQL使用采样统计的门径,会选出N个数据页,每个数据页大小16kb,接着统计选出来的数据页上的不同值就会得到一个平均值,用平均值在乘以索引的页面数得到的效果等于这个索引的基数。

表数据是握续加多或删减的,统计的这个数据也不是每每变化的,当变更的数据特出1/M时会自动触发从头诡计。

这个M是笔据参数innodb_stats_persistent的值选则的,诞生为on值为10,诞生为off值为16。

皇冠体育hg86a

索引基数通过这种格式诡计不是精确的但也差不了几许。

为什么优化器遴荐了扫描行数多的索引? 第一种情况

表增删非常每每,导致扫描行数不准确。

第二种情况

假定你主键索引扫描行数是10W行,而平庸索引需要扫描5W行,这种情况就会遭逢优化器遴荐了扫描行数多的。

皇冠客服不回消息

在索引那一期著述中知说念主键索引是不需要回表的,找到值径直就复返对应的数据了。

而平庸索引是需要先拿到主键值,再笔据主键值取得对应的数据,这个经由优化器遴荐索引时需要诡计的一个本钱。

网上博彩犯法吗 怎样处理这种情况

扫描行数不准确时不错试验analyze table table_name敕令,欧博体育网址从头统计索引信息,达到预期优化器遴荐的索引。

二、索引遴荐颠倒怎样处理 决议一

在MySQL中提供了force index来强制优化器使用这个索引。

使用门径:select * from table_name force index (idx_a) where a = 100;

博彩平台游戏技巧

但别歪曲force index的使用门径,之前在代码中看到这么一个案例,给查询列使用了函数操作导甚至用不上索引,然后这哥们就径直使用force index,细目不能的哈!

当优化器莫得正确遴荐索引时是不错使用这种决议来处理。

皇冠信用盘输钱不给会怎么样2024年欧洲杯中,皇冠博彩公司成为受欢迎赌博网站,许多那里下注,有人赢得大奖。 弱点

使用force index的弱点礼服行家也知说念等于太固执,一朝索引名字改教训会失效。

决议二

删掉误选的索引,肤浅粗暴,许多索引开拓其实亦然给优化器的一个误导,径直删掉即可。

决议三

修改SQL语句,主动领导MySQL使用祈望的索引,一般情况这种作念法使用的很少除非你对系统非常老到,不然尽量少操作。

365bet网站 三、纪念

优化器遴荐索引当先会笔据扫描行数再由试验本钱决定。

皇冠足球

当索引统计信息不准确时,使用analyze table 处理。

皇冠客服飞机:@seo3687

优化器遴荐了无理的索引,只用force index来快速改造,再通过优化SQL语句来领导优化器遴荐正确的索引,最暴力的手法是径直删除误选的索引。

ag官网

 



上一篇:没有了
下一篇:彩票娱乐城博彩平台游戏优惠券活动_钢琴演奏《康定情歌》

Powered by 欧博博彩网址 @2013-2022 RSS地图

皇冠体育导航皇冠体育皇冠现金网皇冠客服新2网址