Mongodb 查询所有表的数据量
在MongoDB中,您可以使用db.collection.stats()
函数来获取每个集合的数据量信息。如果您想要查询所有表(集合)的数据量,您可以编写一个脚本遍历所有集合并获取这些信息。
以下是一个MongoDB的shell命令示例,用于获取所有集合的数据量:
db.getCollectionNames().forEach(function(collectionName) {
var stats = db[collectionName].stats();
print(collectionName + ": " + stats.count);
});
在这个脚本中,db.getCollectionNames()
获取当前数据库中所有集合的名称,然后使用forEach
遍历它们。对于每个集合,我们调用stats()
函数来获取统计信息,并打印出集合名称和数据量(count
属性)。
如果你正在使用MongoDB的Node.js驱动程序,你可以使用以下代码来实现相同的功能:
const MongoClient = require('mongodb').MongoClient;
const url = 'mongodb://localhost:27017';
const dbName = 'your_database_name';
MongoClient.connect(url, function(err, client) {
if(err) throw err;
const db = client.db(dbName);
db.listCollections().toArray(function(err, collections) {
if (err) throw err;
collections.forEach(collection => {
db.collection(collection.name).stats(function(err, stats) {
if (err) throw err;
console.log(collection.name + ": " + stats.count);
});
});
client.close();
});
});
请确保将url
和dbName
替换为实际的MongoDB连接URL和数据库名称。这段代码将连接到MongoDB,遍历所有集合,并为每个集合打印出数据量。
评论已关闭