mongodb清理数据时,数据会不会丢失?

开发每天删除没用的数据后发现数据容量还是没有变化,磁盘空间也就没释放,对于这个我需要repairDatabase() 去释放磁盘空间,试问当我清理数据的时候数据会不会丢失?(我清理的时候都是在晚上线上没有访问的时候,先排除线上数据的变化)...显示全部

开发每天删除没用的数据后发现数据容量还是没有变化,磁盘空间也就没释放,对于这个我需要repairDatabase() 去释放磁盘空间,试问当我清理数据的时候数据会不会丢失?(我清理的时候都是在晚上线上没有访问的时候,先排除线上数据的变化)

收起
参与5

查看其它 1 个回答liucj2004的回答

liucj2004liucj2004其它undefined

1、mongodb的数据空间是复用的,所以不会回收已经删除的空间。

2、repairdatabase需要停机,不会丢数据。建议在副本集上滚动执行,这样对业务影响最小。

3、最后,可以的话,大的表进行拆分。比如说按日期或者按归档表。不需要的数据可以把表drop掉。drop表可以释放空间。(因为删除了对应的表的物理文件)

农业其它 · 2017-01-11
浏览2215

回答者

liucj2004 最近回答过的问题

回答状态

  • 发布时间:2017-01-11
  • 关注会员:2 人
  • 回答浏览:2215
  • X社区推广