当前位置: 首页 > news >正文

数据库参数OPTIMIZER_INDEX_COST_ADJ的一段故事

今天在做一个SQL语句的优化,突然间想起了一个参数OPTIMIZER_INDEX_COST_ADJ。
故事是这样的,当时有个物流行业的DBA来找我,问一个简单的SQL语句怎么不走索引,他查了一圈,没找到问题。
我看了一下,就是一个简单的单表查询,排查了一遍,没看到什么异常。我就问他,大概是从什么时候开始出现这个问题?
然后我通过他提供的时间,然后查看了DB TIME,发现从他说的这个时间点开始,DBTIME有明显的增幅。
然后查看了alert日志,发现有人把OPTIMIZER_INDEX_COST_ADJ修改成了2000。
用会话级别把OPTIMIZER_INDEX_COST_ADJ改回100后,验证就正常了。
后面还有一段故事,就不细说了。
下面就是OPTIMIZER_INDEX_COST_ADJ参数的介绍。


OPTIMIZER_INDEX_COST_ADJ

功能说明:
OPTIMIZER_INDEX_COST_ADJ 参数用于调整优化器在选择访问路径时的行为,使其更倾向于或更不倾向于使用索引访问。


参数属性:

属性描述
参数类型整数(Integer)
默认值100
是否可修改可通过 ALTER SESSIONALTER SYSTEM 修改
是否可在PDB中修改
取值范围1 到 10000
是否为基础参数

详细说明:
该参数的默认值为 100,表示优化器以正常成本评估索引访问路径。
如果设置为其他值,优化器会按该百分比的成本来评估索引访问路径。例如:

  • 设置为 50 时,索引访问路径的成本被视为正常成本的一半,从而使优化器更倾向于选择索引。
  • 设置为 200 时,索引访问路径的成本被视为正常成本的两倍,从而使优化器更不倾向于选择索引。

注意:
此调整不适用于用户自定义的域索引(domain indexes)成本函数。


总结:
OPTIMIZER_INDEX_COST_ADJ 是一个用于微调优化器行为的参数,通过“人为地”降低或提高索引访问路径的“估算成本”,来影响SQL执行计划的选择。常用于优化器未选择理想索引时的手动干预。
修改该参数一定要慎重考虑,我的建议是不要改,影响太大,很难评估。

http://www.dtcms.com/a/582695.html

相关文章:

  • 江西中联建设集团有限公司网站百度网站开发合同范本
  • 西安代做毕业设计网站黑龙江省建设会计协会网站
  • 网站建设7大概要多久做家装的网站有哪些内容
  • 网站description是指什么易天时代网站建设
  • 【期末网页设计作业】HTML+CSS 唐诗学习网站主题的开发(附源码与效果演示)
  • 如何做平台推广seo如何快速排名百度首页
  • zencart网站qq企业邮箱官网
  • 想要极度深入了解一个研究方向,是否要读完所有文献?
  • 三亚网站开发公司温州论坛吧
  • 多人协作Git开发流程指南
  • seo博客网站青岛网络推广公司哪家好
  • 口碑好的建筑设备监控管理系统服务商排名
  • 新手如何做企业网站海南网红打卡旅游景点
  • 济南网站排名推广销售外包服务
  • 学习日报 20251107|Nacos基础认识
  • QPainter
  • 深入评测openEuler 24.03 LTS SP2:在云原生时代构筑高性能的应用与实战操作
  • 网站建设网页链接wordpress flash加载插件
  • wordpress积分阅读成都自动seo
  • [Linux——Lesson22.进程信号:信号保存 信号捕捉]
  • 10.【NXP 号令者RT1052】开发——实战-RT 看门狗(RTWDOG)
  • 维护一个网站需要多少钱黄山网站建设哪家强
  • 深夜思(原创诗)
  • 阿里云做的网站怎么样做网站都需要具备什么
  • openEuler 集群部署Nova计算服务:控制节点与计算节点实战操作
  • 怎么建设网站商城衡阳企业网站建设
  • 广渠门做网站的公司潍坊网站建设公司慕枫
  • 网店装修网站wordpress界面变宽
  • 强化学习的原理
  • Python 装饰器原理与实战技巧(深度解析生成机制)