清空检查点之间的每个缓冲池的 LRU 设置对于检查点的性能并不重要。仅当为页面替换保持足够的清除页面时,LRU 设置才是必要的。
LRU 清空的缺省设置为 lru_min_dirty 的 50% 以及 lru_max_dirty 的 60%。
如果由于检查点的性能您已经将数据库服务器的 LRU 清空配置为更高频率,那么可以将 LRU 清空至少减小到缺省值。
如果 AUTO_LRU_TUNING 配置参数为打开状态,那么在以下情况下数据库服务器会自动调整 LRU 清空:
出现检查点后,如果页面替换在前一个检查点时间间隔内执行了前台写入,那么数据库服务器会将 LRU 设置增加 5%,并在每个后续检查点处持续提高 LRU 清空频率,直至前台写入停止或指定缓冲池的 lru_max_dirty 降低到 10% 以下。例如,如果页面替换执行前台写入,且缓冲池的 LRU 设置为 80 和 90 ,那么数据库服务器会将其调整为 76 和 85.5。
除了前台写入,当缺页故障替换高优先级缓冲区以及非高优先级缓冲区在更改的 LRU 队列中时,LRU 清空将被调节为更频繁。自动 LRU 调整仅使 LRU 清空更具强制性;它们不会减少 LRU 清空。自动 LRU 调整不是永久的并且不记录在 ONCONFIG 文件中。
LRU 清空复位成启动数据库服务器的 ONCONFIG 文件中包含的值。
AUTO_LRU_TUNING 配置参数指定服务器启动时启用还是禁用自动 LRU 调整。