MongoDB - 配额超出错误代码:12501

时间:2017-03-06 07:11:10

标签: mongodb

我使用的是MongoDB的Sandbox(版本:3.2.12)数据库,部署在mLab上。添加/插入记录时我有一个奇怪的问题(来自shell和应用程序)。

我没有为数据库文件设置任何配额限制。

错误讯息:

"错误消息:超出配额错误代码:12501“

但我在数据库中有足够的内存,我可以在“xyz”集合中添加/插入其他集合中的记录。

但是,我已经从" xyz"中删除了一些记录。收集以释放内存并再次尝试插入记录。例如。删除了集合中的2条记录,之后只插入了2条记录。

我可以在配额中添加更多文件,如果是,如何?

有没有办法调试这个?或者没有丢弃数据库的任何其他解决方案?

1 个答案:

答案 0 :(得分:1)

请尝试修复您的数据库。

  

有时,有必要压缩数据库以回收磁盘空间(例如,您是否迅速达到存储限制?)和/或减少碎片。压缩数据库时,实际上是在减小其文件大小。

     

紧凑型沙箱和单节点计划部署

     

如果您使用的是沙盒计划或单节点计划,并且想尝试   回收磁盘空间,您可以使用MongoDB的repairDatabase命令。

     

如果您的文件大小或“磁盘大小”小于1.5 GB,则可以运行此文件   通过访问您的页面直接通过我们的用户界面修复命令   数据库,单击下一步的“工具”选项卡,然后选择   下拉列表中的“ repairDatabase”。否则,您可以运行   使用db.repairDatabase()命令连接到数据库后   mongo shell。

https://docs.mlab.com/ops/#compacting

repairDatabase命令是一项阻止操作。在修复完成之前,您的数据库将不可用。

大约需要20到30秒。