mongoDB笔记
计算所有collection的大小
选择需要计算的collections所在的数据库
# 展示当前存在的数据库
show dbs
# 切换为目标数据库
use test
var colls = db.getCollectionNames();for (var i = 0; i < colls.length; i++) { var coll = db.getCollection(colls[i]); var stats = coll.stats(1024 * 1024); print(stats.ns, stats.storageSize, stats.count); }
#将上述代码复制直接运行即可!
参考:CSDN博主「我不是稻草人」的原创文章
上面代码中用到了下列命令:
- db.getCollectionNames()
- db.getCollectionNames().length
- db.getCollection(“mycoll”)
- db.getCollection(“mycoll”).stats()
- db.getCollection(“mycoll”).stats().ns
- db.getCollection(“mycoll”).stats().storageSize
- db.getCollection(“mycoll”).stats().count
将MongoDB的数据导出为JSON
首先将需要导出的collection的名称写到一个文件中(本例中为collections.list)
cat collections.list | while read coll
do
echo "generating collection-->"$coll" to json"
mongoexport --port 端口 --authenticationDatabase "" -u "" -p "" --db= --collection=$coll --out=$coll.json
done