问题是我们有一个庞大的数据集,其中包含5000万条记录,几乎所有字段都已建立索引,这会导致RAM的大量消耗,并且在删除集合后不会释放资源,我知道可以通过重新启动来解决服务器,但此解决方案不适用于我们的情况。所以,我的问题-有没有一种方法可以释放RAM资源而不重启mongo服务器? Mongo的版本是4.4。预先感谢。
答案 0 :(得分:0)
不直接... MongoDB永远不会释放内存,它只会替换内存或分配更多内存。 但是,如果您开始从磁盘数据中读取所需的数据,那么该数据将替换内存的那部分。 基本的问题是MongoDB将始终(最终)使用所有可用内存,并尝试将所有活动数据保留在内存中。因此,从磁盘读取数据将使该数据“处于活动状态”,并将更改内存中磁盘缓存的内容。