sql未参数化导致的plan cache频繁汰换,如果使用hint:USE_PLAN_CACHE,会不会有什么影响,可以直接在原有的基础上使用这个hint吗?

sql未参数化导致的plan cache频繁汰换,如果使用hint:USE_PLAN_CACHE,会不会有什么影响,可以直接在原有的基础上使用这个hint吗?

从是否可以的角度,可以直接在原有基础上增加/+USE_PLAN_CACHE(DEFAULT)/的方式,其本身是作为一个手动选择是否要在计划缓存机制下运行的开关,同时建议看下对应sql所使用的具体业务场景。影响的部分也可以看下对应的场景参考

对于缓存的推荐使用的场景可以看下这个:https://www.oceanbase.com/docs/common-oceanbase-database-cn-10000000001700664

如果场景就是很多未参数化的SQL导致plan cache内存被打满,这种情况下,其实是可以使用hint来控制下的是吗?
这样做会不会带来什么已知影响?

这个参数化,应该是ob自己做吧,ob转参数化,然后做缓存的。
业务sql层是有很多where条件变化,无法参数化吗?
这种是不是只能扩内存解决啊,用了hint,不还是有其他淘汰,还是在轮换

对,在没办法扩内存的情况下,而且也没办法参数化的情况下的

这个图可以便于理解plan cache在实际执行过程中的作用,USE_PLAN_CACHE的作用是人为控制是否使用plan cache流程分支的走向,https://www.oceanbase.com/docs/common-oceanbase-database-cn-10000000001692964