MongoDB设置数据文件的最大大小限制

时间:2018-12-28 20:03:09

标签: mongodb

我在本地桌面上下载了MongoDb。由于这台计算机上还有其他重要内容,因此我需要确保MongoDB数据文件在任何时候都不会占用超过10GB的磁盘存储空间。如果超过10GB,则在插入新文档时会出现错误消息。

是否可以通过配置文件在磁盘上设置此最大大小?

1 个答案:

答案 0 :(得分:2)

与MongoDB 4.0一样,没有通用的配置选项来限制部署中磁盘的最大大小。

但是,有几种方法可以限制桌面上的存储使用:

  • 为MongoDB dbPath

  • 使用单独的分区或存储卷
  • 在具有最大存储分配的虚拟机或容器中运行MongoDB

  • 连接到托管的MongoDB部署

通常,让数据库服务器空间不足是一个坏主意,因为这可能会导致意外错误或关闭,具体取决于服务器空间不足时要尝试完成的操作。通常,您希望有一个过程监视存储,以便您可以在问题变得严重之前主动释放一些空间。

一些节省空间的技巧可能会有所帮助:

  • Rotate your MongoDB log files定期限制存储使用。如果您使用的是Unix / Linux系统,则可以配置logrotate实用程序以在日志达到目标文件大小时旋转和压缩日志,并在达到一定期限后删除归档的日志。
  • 考虑使用TTL indexes自动从集合中删除旧数据。如果您具有临时数据之类的集合(例如用户会话),这些集合将在过期日期后过时,这将很有用。
  • 丢弃未使用的索引和集合。 WiredTiger存储引擎(MongoDB 3.2+中的默认设置)为每个集合和索引分配一个文件,因此删除其中任何一个都应立即释放存储空间。