MLRU 清除结束

还可以指定 MLRU 清除可以结束的点。BUFFERPOOL 配置参数中的 lru_min_dirty 值指定 MLRU 队列中缓冲区的可接受百分比。例如,如果将 lru_min_dirty 设置为 50.00,那么当修改了 LRU 队列中 50% 的缓冲区时就不需要清除页了。 实际上,页清除可以根据页清除程序线程的指令继续超过此点。

以下示例显示 lru_min_dirty 的值如何应用于 LRU 队列,以指定 MLRU 队列中缓冲区的可接受百分比以及页清除结束的点。
Buffers specified as 8000
lrus specified as 8
lru_min_dirty specified as 50 percent

The acceptable number of buffers in the MLRU queue and 
   the point at which page cleaning can end is equal
   to lru_min_dirty. 

Buffers per LRU queue = (8000/8) = 1000

Acceptable number of buffers in MLRU queue and the point 
   at which page cleaning can end: 1000 x .50 = 500

可以对 lru_max_dirtylru_min_dirty 值使用十进制。例如,如果把 lru_max_dirty 设置为 1.0333 并且把 lru_min_dirty 设置为 1.0,那么将触发 LRU 在 3,100 脏缓冲区时开始写并在 3,000 脏缓冲区时停止。

有关数据库服务器如何清空缓冲池的更多信息,请参阅将数据清空到磁盘