查询MongoDB中某个数据库的占用空间大小

要查询MongoDB中某个数据库的占用空间大小,可以使用以下几种方法:

方法一:使用 MongoDB Shell (`mongo`)

  1. **连接到 MongoDB**:

bash

mongo

  1. **选择数据库**:

javascript

use yourDatabaseName

  1. **运行 `db.stats()` 命令**:

javascript

db.stats()

这将返回一个包含数据库统计信息的对象,其中包括数据库的大小。例如:

json

{

"db": "yourDatabaseName",

"collections": 5,

"views": 0,

"objects": 1000,

"avgObjSize": 123.45,

"dataSize": 123450,

"storageSize": 234567,

"numExtents": 0,

"indexes": 5,

"indexSize": 67890,

"fileSize": 345678,

...

}

在这个输出中:

  • `dataSize`:数据的大小(字节)。

  • `storageSize`:数据和索引在磁盘上的物理大小(字节)。

  • `indexSize`:索引的大小(字节)。

方法二:使用 MongoDB Atlas 或其他 GUI 工具

如果你使用的是 MongoDB Atlas 或其他带有图形用户界面的管理工具(如 MongoDB Compass),这些工具通常会在界面中直接显示数据库和集合的大小信息。

方法三:使用 `mongostat` 和 `mongotop`

  • **`mongostat`**:实时监控MongoDB的性能统计数据,可以显示数据库级别的信息。

  • **`mongotop`**:实时监控各数据库的读写活动,但不直接显示数据库大小。

bash

mongostat --all

bash

mongotop

方法四:使用 Admin Command

MongoDB还提供了数据库级别的统计信息命令,你可以在MongoDB shell中运行以下命令获取详细的数据库和集合统计信息:

javascript
db.adminCommand({ listDatabases: 1 })

这个命令会列出所有数据库及其大小信息。

方法五:使用 Python 等编程语言

你也可以使用编程语言(如Python)来查询MongoDB数据库的大小。以下是使用Python和PyMongo库的示例:

python

from pymongo import MongoClient

client = MongoClient('mongodb://localhost:27017/')

db = client'yourDatabaseName'

stats = db.command("dbstats")

print(f"Database Size: {stats'dataSize'} bytes")

print(f"Storage Size: {stats'storageSize'} bytes")

print(f"Index Size: {stats'indexSize'} bytes")

总结,查询MongoDB数据库占用空间的方法多种多样,可以根据具体环境和需求选择合适的方法进行查询。

相关推荐
葫芦和十三2 小时前
图解 MongoDB 18|复制集拓扑:Primary、Secondary 和 Arbiter 的分工
后端·mongodb·面试
葫芦和十三8 小时前
图解 MongoDB 15|journal 与持久化:写入怎么不丢,崩溃怎么恢复
后端·mongodb·面试
葫芦和十三8 小时前
图解 MongoDB 16|压缩:snappy、zstd 和 zlib 的取舍
后端·mongodb·面试
笃行35011 小时前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行35011 小时前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行35011 小时前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
葫芦和十三1 天前
图解 MongoDB 13|WiredTiger 存储引擎:B-tree、页和 checkpoint 三件套
后端·mongodb·agent
葫芦和十三1 天前
图解 MongoDB 14|Cache 与淘汰:WiredTiger 的内存治理
后端·mongodb·面试
SelectDB1 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc