mongodb 数据文件太大

问题: 开发服务器mongodb数据文件太大。占用近80G,其中某个db占用最大(运营环境这个db的数据只有3G大小)

分析: 开发环境有大量测试的 增加/删除/修改 操作, 长期以来会导致数据文件非常大,但 实际存储数据并不是很多.

129M db_name.1
2.1G db_name.10
2.1G db_name.11
2.1G db_name.12
2.1G db_name.13
2.1G db_name.14
2.1G db_name.15
2.1G db_name.16
2.1G db_name.17
2.1G db_name.18
2.1G db_name.19
257M db_name.2
2.1G db_name.20
2.1G db_name.21
2.1G db_name.22
2.1G db_name.23
2.1G db_name.24
2.1G db_name.25
2.1G db_name.26
2.1G db_name.27
2.1G db_name.28
2.1G db_name.29
513M db_name.3
2.1G db_name.30
2.1G db_name.31

操作:

a) 删除许多开发测试数据后(db.collection.remove()),数据文件显然是不会变小的.
b) /usr/local/mongodb-new/bin/mongodump --db Mydb --host 127.0.0.1 --port=27017 -uadmin -p123
c) 关闭mongodb
d) cd /data/mongodb/ ; rm db_name.*
e) 启动mongodb;启动后登陆mongo 确认原来的mongo库已被删除(正常情况下show dbs已经看不到原来的数据库) ; use db_name;db.addUser('admin','123');
f) /usr/local/mongodb-new/bin/mongorestore --db Mydb --host=127.0.0.1 --port=27017 -uadmin -p123 dump/Mydb/

结果:

瘦身后mongodb数据文件如下:

65M db_name.0
129M db_name.1
257M db_name.2
513M db_name.3

> show dbs;
db_name 1.953125GB

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值