plan cache自动淘汰的机制是否可以避免发生新生成计划无法加入plan cache的情况发生?
plan cache的自动淘汰,使用的是LRU算法,并且有上下水位限制,当达到上水位的时候,开始执行旧的计划淘汰,是可以保证新计划加入到plan cache的。可以了解下plan_cache_evict_interval、plan_cache_low_watermark、plan_cache_high_watermark这三个参数
有几种场景不支持加入到计划缓存中:
1、内存大小超过20M执行计划不加入计划缓存
2、如果该计划包含全局索引,且涉及到多张表,plan cache暂不支持缓存改计划
那这道题应该去如何理解?
如果遇到这种特殊情况,新的执行计划是无法加入到Plan cache的,所以即使有自动淘汰机制,也不一定能保证新的计划能加入到Plan cache。
这个是OBCP的模拟题吧,我已经反馈到考试团队,他们在评估这道题。
1 个赞
多谢,如果有反馈麻烦您在这里同步下。
