Docs 菜单
Docs 主页
/
MongoDB Manual
/ / /

在 macOS 上安装 MongoDB Community Edition

在此页面上

  • Overview
  • Considerations
  • 安装 MongoDB Community Edition
  • 运行 MongoDB Community Edition
  • 使用 MongoDB Database Tools
  • 更多信息

使用本教程,利用第三方8.0 Homebrew 在 macOS 上安装MongoDB Community Edition 包管理器。

从 MongoDB 4.4.1 开始,通过 Homebrew 安装 MongoDB 还会安装 MongoDB Database Tools。请参阅使用 MongoDB Database Tools,了解更多信息。

本教程将安装 MongoDB 8 。 0社区版。要安装不同版本的 MongoDB Community,请使用此页面左上角的版本下拉菜单选择该版本的文档。

MongoDB 8.0社区版支持 macOS 11或更高版本。

有关更多信息,请参阅平台支持。

在生产环境中部署 MongoDB 之前,请参阅《自管理部署的生产说明》文档,其中提供了 MongoDB 生产部署的性能注意事项和配置建议。

确保您的系统满足以下各项先决条件。每个先决步骤只需在系统上执行一次。如果您已使用 Homebrew 在之前的 MongoDB 安装过程中执行了这些先决步骤,则可以跳至安装过程

Homebrew 需要 Apple Xcode 中的 Xcode 命令行工具。

  • 在您的 macOS 终端运行以下命令来安装 Xcode 命令行工具:

    xcode-select --install

macOS 默认不包含 Homebrew brew 软件包。

按照以下步骤使用 brew 软件包管理器安装 MongoDB Community Edition。在继续之前,请确保您已符合上述安装前提条件

  1. 点击 MongoDB Homebrew Tap 下载适用于 MongoDB 的官方 Homebrew 公式和数据库工具,方法是在 macOS 终端运行以下命令:

    brew tap mongodb/brew

    如果您在先前安装 MongoDB 时已经执行此操作,则可以跳过此步骤。

  2. To update Homebrew and all existing formulae:

    brew update
  3. 要安装 MongoDB,请在您的 macOS 终端应用程序中运行以下命令:

    brew install mongodb-community@8.0

提示

如果需要,您可以指定安装 MongoDB 的先前版本。您还可以通过这种方式并行维护多个版本的 MongoDB。

提示

如果之前安装了旧版公式,则可能会遇到 ChecksumMismatchError。要解决这个问题,请参阅对 ChecksumMismatchError 进行故障排除

安装内容包括以下二进制文件:

此外,根据您的 Apple 硬件,安装过程中会在下面指定的位置创建对应文件和目录:

Intel 处理器
Apple Silicon Processor
/usr/local/etc/mongod.conf
/opt/homebrew/etc/mongod.conf
/usr/local/var/log/mongodb
/opt/homebrew/var/log/mongodb
/usr/local/var/mongodb
/opt/homebrew/var/mongodb

有关使用 Apple Silicon 处理器的 Apple 硬件的最新列表,请参阅 Apple 文档。您还可以运行以下命令来检查 brew 已安装这些文件和目录:

brew --prefix

从 MongoDB 4.4.1 开始,安装内容还包括 MongoDB Database Tools。请参阅使用 MongoDB Database Tools,了解更多信息。

请按照以下步骤运行 MongoDB Community Edition。 这些说明假设您使用的是默认设置。

You can run MongoDB as a macOS service using brew, or you can run MongoDB manually as a background process. It is recommended to run MongoDB as a macOS service, as doing so sets the correct system ulimit values automatically (see ulimit settings for more information).

  • 要运行 MongoDB(即 mongod 进程)作为 macOS 服务,运行:

    brew services start mongodb-community@8.0

    要停止作为 macOS 服务运行的 mongod,请根据需要使用以下命令:

    brew services stop mongodb-community@8.0
  • 要使用配置文件手动将 mongod 作为后台进程运行,请运行:

    • For macOS running Intel processors:

      mongod --config /usr/local/etc/mongod.conf --fork
    • 对于在 Apple Silicon 处理器上运行的 macOS:

      mongod --config /opt/homebrew/etc/mongod.conf --fork
  • 要手动将 mongod 作为后台进程运行并在命令行中指定 --dbpath--logpath,请运行:

    mongod --dbpath /path/to/dbdir --logpath /path/to/mongodb.log --fork

    要停止作为后台进程运行的 mongod,请使用 mongosh 连接到 mongod,并根据需要发出 shutdown 命令。

这两种方法都会使用安装时创建的 mongod.conf 文件。您也可以在此文件中添加自己的 MongoDB 配置选项

注意

macOS 阻止 mongod 打开

macOS 可能会阻止 mongod 在安装后运行。如果在启动 mongod 时出现安全错误,表明无法识别或验证开发者的身份,请执行以下操作以授予 mongod 的运行权限:

  • 打开系统偏好设置

  • 选择“安全和隐私”窗格。

  • 通用标签页下,单击有关 mongod 消息右侧的按钮,该按钮标记为 Open AnywayAllow Anyway,具体取决于您的 macOS 版本。

要验证 MongoDB 是否正在运行,请执行以下操作之一:

  • 如果将 MongoDB 作为 macOS 服务启动:

    brew services list

    应该会看到服务 mongodb-community 列为 started

  • 如果将 MongoDB 作为后台进程手动启动:

    ps aux | grep -v grep | grep mongod

    应该在输出中看到 mongod 进程。

还可以查看日志文件,看到 mongod 进程的当前状态:/usr/local/var/log/mongodb/mongo.log

要开始使用 MongoDB,请将 mongosh 连接到运行中的实例。从新终端发出以下命令:

mongosh

有关 CRUD(创建、读取、更新、删除)操作的信息,请参阅:

从 MongoDB 4.4.1 开始,通过 brew 安装 MongoDB 还会安装 MongoDB Database Tools。

MongoDB Database Tools 是一系列与 MongoDB 部署结合使用的命令行实用程序,包括数据备份和导入/导出工具(如 mongoimportmongodump)以及监控工具(如 mongotop)。

在上述步骤中安装 MongoDB Server 后,可以直接在 macOS 终端应用程序中的命令行中使用 Database Tools。例如,要对当前正在运行的 MongoDB 实例运行 mongotop,您可以在 macOS 终端调用它,如下所示:

mongotop

它应会启动,连接到正在运行的 mongod,然后开始报告使用情况统计信息。

有关每个数据库工具的使用信息,请参阅MongoDB 数据库工具文档

默认情况下,MongoDB 启动时会将bindIp设置为127.0.0.1 ,绑定到本地主机网络接口。这意味着mongod只能接受来自同一计算机上运行的客户端的连接。远程客户端将无法连接到mongod ,并且mongod将无法初始化副本集,除非将此值设置为有效的网络接口。

该值可通过以下任一方式配置:

  • 在 MongoDB 配置文件中使用 bindIp,或

  • 通过命令行参数 --bind_ip

警告

在将实例绑定到可公开访问的 IP 地址之前,必须保护集群免遭未经授权的访问。有关安全建议的完整列表,请参阅自托管部署的安全检查清单。至少应考虑启用身份验证强化网络基础架构。

有关配置bindIp的详细信息,请参阅自托管部署中的 IP 绑定。

如果安装过旧版公式,则可能会遇到类似以下内容的 ChecksumMismatchError

Error: An exception occurred within a child process:
ChecksumMismatchError: SHA256 mismatch
Expected: c7214ee7bda3cf9566e8776a8978706d9827c1b09017e17b66a5a4e0c0731e1f
Actual: 6aa2e0c348e8abeec7931dced1f85d4bb161ef209c6af317fe530ea11bbac8f0
Archive: /Users/kay/Library/Caches/Homebrew/downloads/a6696157a9852f392ec6323b4bb697b86312f0c345d390111bd51bb1cbd7e219--mongodb-macos-x86_64-4.2.0.tgz
To retry an incomplete download, remove the file above.

要修复:

  1. Remove the downloaded .tgz archive.

  2. Retap the formula.

    brew untap mongodb/brew && brew tap mongodb/brew
  3. 重试安装。

    brew install mongodb-community@8.0

后退

使用 .tgz Tarball 进行安装