
MySQL8 常用Hint操作
发布日期:2021-05-08 15:26:35
浏览次数:20
分类:精选文章
本文共 2019 字,大约阅读时间需要 6 分钟。
文章目录
一、Optimizer Hints
提示名称 | 描述 | 适用范围 |
---|---|---|
BKA, NO_BKA | 影响使用BKA联接处理 | Query block,table |
BNL, NO_BNL | MySQL 8.0.20之前的版本:影响块嵌套循环的连接处理;MySQL 8.0.18及更高版本:还影响哈希联接优化;MySQL 8.0.20及更高版本:仅影响哈希联接优化 | Query block,table |
DERIVED_CONDITION_PUSHDOWN, NO_DERIVED_CONDITION_PUSHDOWN | 对物化派生table使用或忽略派生条件下推优化(在MySQL 8.0.22中添加) | Query block,table |
GROUP_INDEX, NO_GROUP_INDEX | 在GROUP BY操作中使用或忽略指定的一个或多个索引进行索引扫描 (在MySQL 8.0.20中添加) | Index |
HASH_JOIN, NO_HASH_JOIN | 影响哈希联接优化(仅适用于MySQL 8.0.18 | Query block,table |
INDEX, NO_INDEX | 充当的组合JOIN_INDEX, GROUP_INDEX以及 ORDER_INDEX,或作为组合 NO_JOIN_INDEX, NO_GROUP_INDEX和 NO_ORDER_INDEX(由在MySQL 8.0.20) | Index |
INDEX_MERGE, NO_INDEX_MERGE | 影响索引合并优化 | table,Index |
JOIN_FIXED_ORDER | 使用FROM子句中指定的table顺序作为连接顺序 | Query block |
JOIN_INDEX, NO_JOIN_INDEX | 对任何访问方法使用或忽略指定的索引(在MySQL 8.0.20中添加) | Index |
JOIN_ORDER | 使用提示中指定的table顺序作为连接顺序 | Query block |
JOIN_PREFIX | 将提示中指定的table顺序用于连接顺序的第一张table | Query block |
JOIN_SUFFIX | 将提示中指定的table顺序用于联接顺序的最后一个table | Query block |
MAX_EXECUTION_TIME | 限制语句执行时间 | Global |
MERGE,NO_MERGE | 影响派生table/视图合并到外部Query block中 | table |
MRR, NO_MRR | 影响多范围读取优化 | table,Index |
NO_ICP | 影响索引条件下推式优化 | table,Global |
NO_RANGE_OPTIMIZATION | 影响范围优化 | table,Index |
ORDER_INDEX,NO_ORDER_INDEX | 使用或忽略指定的一个或多个索引对行进行排序(在MySQL 8.0.20中添加) | Index |
QB_NAME | 为Query block分配名称 | Query block |
RESOURCE_GROUP | 在语句执行期间设置资源组 | Global |
SEMIJOIN, NO_SEMIJOIN | 影响半联接策略;从MySQL 8.0.17开始,这也适用于anti-joins | Query block |
SKIP_SCAN, NO_SKIP_SCAN | 影响跳过扫描优化 | table,Index |
SET_VAR | 在语句执行期间设置变量 | Global |
SUBQUERY | 影响物化, IN至- EXISTS子查询配置的对策探讨 | Query block |
hint用法
#基本语法/*+ BKA(t1) *//*+ BNL(t1, t2) *//*+ NO_RANGE_OPTIMIZATION(t4 PRIMARY) *//*+ QB_NAME(qb2) */SELECT /*+ ... */ ...INSERT /*+ ... */ ...REPLACE /*+ ... */ ...UPDATE /*+ ... */ ...DELETE /*+ ... */ ...#多个hint条件SELECT /*+ BNL(t1) BKA(t2) */ ...
二、Index Hints
语法
tbl_name [[AS] alias] [index_hint_list]index_hint_list: index_hint [index_hint] ...index_hint: USE {INDEX|KEY} [FOR {JOIN|ORDER BY|GROUP BY}] ([index_list]) | {IGNORE|FORCE} {INDEX|KEY} [FOR {JOIN|ORDER BY|GROUP BY}] (index_list)index_list: index_name [, index_name] ...
发表评论
最新留言
表示我来过!
[***.240.166.169]2025年04月02日 02时31分43秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
上周热点回顾(1.16-1.22)
2021-05-09
上周热点回顾(1.23-1.29)
2021-05-09
上周热点回顾(3.20-3.26)
2021-05-09
上周热点回顾(6.19-6.25)
2021-05-09
云计算之路-阿里云上:docker swarm 集群故障与异常
2021-05-09
上周热点回顾(2.19-2.25)
2021-05-09
云计算之路-阿里云上:博客web服务器轮番CPU 100%
2021-05-09
云计算之路-阿里云上:服务器CPU 100%问题是memcached连接数限制引起的
2021-05-09
上周热点回顾(3.26-4.1)
2021-05-09
上周热点回顾(6.25-7.1)
2021-05-09
【故障公告】10:30-10:45 左右 docker swarm 集群节点问题引发故障
2021-05-09
工作半年的思考
2021-05-09
不可思议的纯 CSS 滚动进度条效果
2021-05-09
【CSS进阶】伪元素的妙用--单标签之美
2021-05-09
惊闻NBC在奥运后放弃使用Silverlight
2021-05-09
IE下尚未实现错误的原因
2021-05-09
创建自己的Docker基础镜像
2021-05-09
Python 简明教程 --- 20,Python 类中的属性与方法
2021-05-09
KNN 算法-理论篇-如何给电影进行分类
2021-05-09