在MongoDB中,如何打印所有收集计数和索引?

时间:2015-09-18 01:04:37

标签: mongodb

我需要在迁移到另一台服务器之前验证数据,并且我想确保所有文档和索引并正确传输。是否有命令我跑来做这个?

1 个答案:

答案 0 :(得分:3)

此脚本将输出您想要的内容:

db = db.getSiblingDB('admin');

var dbs = db.adminCommand('listDatabases');

dbs.databases.forEach(function(database){
  print("Database: " + database.name);
  print("-----");

  db = db.getSiblingDB(database.name);

  db.getCollectionNames().forEach(function(collection) {
    indexes = db[collection].getIndexes();
    print("Collection '" + collection + "' documents: " + db[collection].count());
    print("Indexes for " + collection + ":");
    printjson(indexes);
  });

  print("");

});