如何在MongoDB中以ASCENDING / DESCENDING顺序显示所有数据库及其大小

时间:2016-10-10 06:31:47

标签: mongodb

我的MongoDB系统中有超过600个数据库。每当我运行命令 show dbs 时,它返回的数据库的大小按字母顺序排列。我想以升序或降序获得数据库 这可能在MongoDB中吗?

1 个答案:

答案 0 :(得分:6)

你可以在shell中编写简单的java脚本

db.adminCommand("listDatabases").databases
    .sort(function(l, r) {
         return r.sizeOnDisk - l.sizeOnDisk})
    .forEach(function(d) {
         print(d.name + " - " + d.sizeOnDisk)});

或者通过传递脚本来调用shell:

mongo --quiet  --eval 'db.adminCommand("listDatabases").databases.sort(function(l, r) {return r.sizeOnDisk - l.sizeOnDisk}).forEach(function(d) {print(d.name + " - " + d.sizeOnDisk)});'