You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从MongoDB中仅导出列名及查看数据库元数据

方法1:通过MongoDB Compass直接获取列名(无需写脚本)

你使用的4.2版本Compass可以直接按以下步骤操作,全程可视化不需要写代码:

  • 打开对应数据库,点击进入目标集合详情页
  • 切换到Schema标签页,等待Compass自动扫描集合内的所有文档字段(即你说的列名)
  • 点击右上角的Export按钮,选择导出格式为CSV或JSON,此时导出的内容就是当前集合的字段名、字段类型等元数据,不会包含实际业务数据
  • 如果需要导出所有集合的元数据,重复上述操作逐个集合导出即可

方法2:通过Mongo Shell简单命令批量获取(复制即可用,无需懂脚本逻辑)

如果需要一次性导出所有集合的字段名,只需要打开Mongo Shell后按顺序执行以下内容即可:

  1. 切换到你的目标数据库
    use 替换为你的数据库名称
  2. 复制粘贴以下命令执行,终端会直接打印所有集合的字段列表:
db.getCollectionNames().forEach(function(collName) {
  var allKeys = {};
  db[collName].find().forEach(function(doc) {
    Object.keys(doc).forEach(function(key) { allKeys[key] = 1; });
  });
  print("集合名:" + collName + ",字段列表:" + Object.keys(allKeys).join(","));
})
  1. 直接复制终端输出的内容保存到本地文件,就完成了批量导出

其他常见元数据查看方法

  • 查看数据库下所有集合名:在Compass左侧边栏可直接查看,或在Mongo Shell执行db.getCollectionNames()
  • 查看集合数据量、存储空间占用:进入集合后切换到Overview标签页即可查看,或在Mongo Shell执行db.替换为集合名.stats()
  • 查看集合的索引信息:进入集合后切换到Indexes标签页即可查看,或在Mongo Shell执行db.替换为集合名.getIndexes()

内容的提问来源于stack exchange,提问作者Kurt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 01:42:02