Mongodb】db.stats() 与 db.serverStats() 与 db.collection.stats()
时间: 2024-03-19 08:42:11 浏览: 20
这三个命令都是用于获取MongoDB数据库或集合的统计信息,但是它们针对的对象不同,统计内容也不同。
1. `db.stats()`
该命令用于获取当前数据库的统计信息,返回的是一个包含数据库大小、集合数量、索引数量等信息的对象。在MongoDB的shell环境下执行该命令,即可查看当前数据库的统计信息。
2. `db.serverStats()`
该命令用于获取MongoDB服务器的统计信息,返回的是一个包含服务器运行时间、内存使用情况、线程数等信息的对象。在MongoDB的shell环境下执行该命令,即可查看当前MongoDB服务器的统计信息。
3. `db.collection.stats()`
该命令用于获取指定集合的统计信息,返回的是一个包含集合大小、文档数量、索引数量等信息的对象。在MongoDB的shell环境下执行该命令,需要先切换到对应的数据库,然后再执行该命令,即可查看指定集合的统计信息。
需要注意的是,这三个命令都只能在MongoDB的shell环境下执行,无法在代码中使用。
相关问题
Mongodb】db.stats() 与 db.serverStats() 与 db.collection.stats()返回信息详解
1. `db.stats()`
该命令返回当前数据库的统计信息,包括以下内容:
- `db`:当前数据库名称。
- `collections`:当前数据库中集合的数量。
- `views`:当前数据库中视图的数量。
- `objects`:当前数据库中文档的数量。
- `avgObjSize`:当前数据库中文档的平均大小。
- `dataSize`:当前数据库中数据的总大小。
- `storageSize`:当前数据库中存储数据所需的总空间。
- `numExtents`:当前数据库中数据文件的数量。
- `indexes`:当前数据库中索引的数量。
- `indexSize`:当前数据库中索引所需的总空间。
- `fileSize`:当前数据库中所有数据文件的总大小。
- `ok`:命令执行结果,如果为1表示成功,如果为0表示失败。
2. `db.serverStats()`
该命令返回MongoDB服务器的统计信息,包括以下内容:
- `host`:MongoDB服务器的主机名。
- `version`:MongoDB服务器的版本号。
- `process`:MongoDB服务器的进程ID。
- `uptime`:MongoDB服务器的运行时间。
- `uptimeMillis`:MongoDB服务器的运行时间(毫秒)。
- `uptimeEstimate`:MongoDB服务器的运行时间(估计值)。
- `localTime`:MongoDB服务器的本地时间。
- `asserts`:MongoDB服务器的断言统计信息。
- `connections`:MongoDB服务器的连接统计信息。
- `network`:MongoDB服务器的网络统计信息。
- `opcounters`:MongoDB服务器的操作计数统计信息。
- `mem`:MongoDB服务器的内存使用情况统计信息。
- `storageEngine`:MongoDB服务器的存储引擎统计信息。
- `extra_info`:MongoDB服务器的其他统计信息。
- `ok`:命令执行结果,如果为1表示成功,如果为0表示失败。
3. `db.collection.stats()`
该命令返回指定集合的统计信息,包括以下内容:
- `ns`:当前集合的全名(包括数据库名称和集合名称)。
- `count`:当前集合中文档的数量。
- `size`:当前集合中所有文档的总大小(单位为字节)。
- `storageSize`:当前集合中存储数据所需的总空间(单位为字节)。
- `avgObjSize`:当前集合中文档的平均大小。
- `capped`:当前集合是否为固定大小的集合。
- `nindexes`:当前集合中索引的数量。
- `totalIndexSize`:当前集合中索引所需的总空间(单位为字节)。
- `indexSizes`:当前集合中每个索引所需的空间(单位为字节)。
- `ok`:命令执行结果,如果为1表示成功,如果为0表示失败。
需要注意的是,这些命令返回的信息都是以JSON格式表示的。
mongodb db.system.js
`db.system.js` 是 MongoDB 中的一个特殊集合,用于存储存储在数据库中的 JavaScript 函数。
当您在 MongoDB 中创建一个 JavaScript 函数并将其保存到 `db.system.js` 集合时,您可以通过函数名来调用该函数。这样,您可以在数据库中执行自定义的 JavaScript 逻辑。
要在 MongoDB 中查看 `db.system.js` 集合中的函数列表,可以使用以下命令:
```javascript
db.system.js.find()
```
这将返回 `db.system.js` 集合中的所有文档,每个文档代表一个保存的 JavaScript 函数。每个文档包含函数的名称和代码。
请注意,MongoDB 的最新版本已经不再推荐使用 `db.system.js` 集合来存储 JavaScript 函数。相反,建议使用 MongoDB 的聚合管道和存储过程等功能来执行复杂的操作和逻辑。