在本地终端直接操控云端的 MongoDB Atlas 资源,是许多运维和后端开发者提升效率的切实需求。mongodb-atlas-cli 是官方提供的命令行工具,它把 Atlas 后台的 API 封装成易用的子命令,支持集群、数据库用户、网络访问、备份等全生命周期管理。

一、mongodb-atlas-cli 的安装与基础配置
大多数 Linux 和 macOS 环境都可以直接通过官方安装包或包管理器获取 mongodb-atlas-cli。以 macOS 为例,使用 Homebrew 只需执行一条安装命令,工具就会被放入系统路径中。Windows 用户则可以使用官方 MSI 安装程序,或在 WSL 环境中按 Linux 方式处理。
安装完成后,第一步并不是立刻连集群,而是建立本地到 Atlas 的鉴权关系。Atlas 采用 API Key 模式,你需要在组织设置中创建一对公钥和私钥,然后将它们写入配置文件或环境变量。这样后续命令就不需要每次手动登录,适合写在自动化脚本里。
# macOS 使用 brew 安装 brew install mongodb-atlas-cli # 查看版本确认安装成功 atlas version # 配置公钥与私钥(推荐用环境变量避免泄露) export MONGODB_ATLAS_PUBLIC_API_KEY="你的公钥" export MONGODB_ATLAS_PRIVATE_API_KEY="你的私钥" export MONGODB_ATLAS_ORG_ID="你的组织ID"
如果不想用环境变量,也可以通过 atlas config 命令写入本地配置文件,文件默认存放在用户目录下的 .atlascli 中。需要注意的是,私钥等同于账号权限,绝不能提交到代码仓库。建议配合密钥管理工具使用。
配置就绪后,可以用最简单的命令测试连通性,例如列出当前组织下的所有项目。如果能正常返回项目列表,说明鉴权链路已经打通,后续所有管理动作都可以基于此展开。
二、用命令行管理集群与数据库用户
创建集群是 Atlas 中最常见的操作。在网页后台需要点选多个下拉框,而用 mongodb-atlas-cli 只需一条命令并带上参数。你可以明确指定云服务商、区域、实例规格和磁盘大小,这种声明式写法特别适合环境复制和灾备搭建。
下面的示例展示如何创建一个名为 demo-cluster 的集群,选择 AWS 的东京区域和 M10 规格。命令发出后,Atlas 会在后台调度资源,通常几分钟内集群状态变为可用。你可以用 atlas clusters describe 随时查看进度。
# 在项目下创建集群 atlas clusters create demo-cluster --projectId 你的项目ID --provider AWS --region AP_NORTHEAST_1 --tier M10 --diskSizeGB 10 # 查看集群状态 atlas clusters describe demo-cluster --projectId 你的项目ID
除了集群本身,数据库用户也是重点管理对象。过去在控制台添加用户容易遗漏 IP 白名单,而命令行可以顺带把访问规则一并配置好。使用 atlas dbusers create 能指定用户名、密码和内置角色,比如只给只读权限的 analyst 账号。
网络访问方面,atlas accessLists create 允许你把办公网段或服务器 IP 加入白名单。在自动化流程中,通常会先放通 CI 机器的出口 IP,跑完集成测试再回收,减少长期暴露面。这种组合操作如果靠人工点击,既慢又容易出错。
# 创建只读数据库用户 atlas dbusers create --username analyst --password 强密码字符串 --role readAnyDatabase --projectId 你的项目ID # 添加 IP 白名单 atlas accessLists create 203.0.113.5/32 --projectId 你的项目ID
三、备份、恢复与日常运维命令
Atlas 提供托管备份能力,mongodb-atlas-cli 可以列出快照并触发恢复。对于需要定期验证备份有效性的团队,用脚本调用 atlas backups snapshots list 再配合恢复演练,比手动操作可靠得多。快照默认按策略保留,你也可以查询具体时间点的恢复点。
当业务出现突发流量,临时升配是常见动作。命令行修改 tier 后,Atlas 会做在线变更,应用连接串通常无需改动。下面的代码演示如何把集群从 M10 升到 M20,以及怎么查看正在进行的变更任务。
# 列出备份快照 atlas backups snapshots list demo-cluster --projectId 你的项目ID # 集群升配 atlas clusters update demo-cluster --tier M20 --projectId 你的项目ID # 查看变更任务状态 atlas clusters describe demo-cluster --projectId 你的项目ID
在日常巡检中,还可以用命令导出集群指标,例如磁盘使用率和连接数,再接入自有监控系统。相比网页图表,命令行输出是结构化文本,方便用 awk 或 jq 做二次处理。对于拥有多个项目和集群的中大型团队,这种批量拉取能力尤为关键。
最后提醒一点,mongodb-atlas-cli 的子命令数量较多,建议用 atlas help 随时查阅。把常用组合写成 makefile 或 shell 函数,可以让新同事在不熟悉后台的情况下也能安全完成标准操作,降低运维门槛。
四、命令行与网页后台的协作定位
命令行工具并不是要完全替代网页后台。控制台在可视化拓扑、慢查询分析和告警配置上依然直观,而 mongodb-atlas-cli 更擅长重复性和程序化的任务。实际工作中,二者互补:用网页做排查和展示,用命令行做变更和编排。
当你的部署流程已经容器化,完全可以在 CI 阶段调用 mongodb-atlas-cli 拉起临时集群做端到端测试,测试结束自动删除。这种用法在单靠人工后台操作时几乎无法实现,也体现了命令行管理在工程效率上的真正价值。
mongodb-atlas-cliMongoDB_Atlas命令行管理修改时间:2026-08-10 14:00:37