Skip to main content

Install MongoDB Community Edition on macOS


Overview

  • Tutorial by MongoDB Atlas: A hosted MongoDB service option in the cloud which requires no installation overhead and offers a free tier to get started. Use this tutorial to install MongoDB 4.2 Community Edition on macOS using the third-party brew package manager.
  • MongoDB Version: This tutorial installs MongoDB 4.2 Community Edition. To install a different version of MongoDB Community, use the version drop-down menu in the upper-left corner of this page to select the documentation for that version.
  • Platform Support: MongoDB 4.2 Community Edition supports macOS 10.12 or later. See Supported Platforms for more information.
  • Production Notes: Before deploying MongoDB in a production environment, consider the Production Notes document which offers performance considerations and configuration recommendations for production MongoDB deployments.
  • Prerequisites: If you have the Homebrew package installed on your OSX host, and you have previously tapped the official MongoDB Homebrew Tap, skip the prerequisites and go to the Procedure step.
  • Install XCode: Apples XCode includes command-line tools that are required by brew, and is available for free on the App Store. Make sure you are running the latest version.
  • Install Homebrew: OSX does not include the Homebrew brew package by default. Install brew using the official instructions.

Tap the MongoDB Homebrew Tap

Issue the following from the terminal to tap the official MongoDB Homebrew Tap:

brew tap mongodb/brew

Procedure

Follow these steps to install MongoDB Community Edition using the third- party brew package manager.

From a terminal, issue the following:

brew install mongodb-community@4.4

tip

If you have previously installed an older version of the formula, you may encounter a ChecksumMismatchError. To resolve, seeTroubleshooting ChecksumMismatchError at the bottom of these instructions.

In addition to the binaries, the installation creates:

Run MongoDB Community Edition

Follow these steps to run MongoDB Community Edition. These instructions assume that you are using the default settings.

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).

To run MongoDB (i.e. the mongod process)as a macOS service, issue the following:

brew services start mongodb-community@4.2

To stop a mongod running as a macOS service, use the following command as needed:

brew services stop mongodb-community@4.2

To run MongoDB (i.e. the mongod process) manually as a background process, issue the following:

mongod --config /usr/local/etc/mongod.conf --fork

To stop a mongod running as a background process, connect to the mongod from the mongo shell, and issue the shutdown command as needed.

Both methods use the /usr/local/etc/mongod.conf file created during the installation. You can add your own MongoDB configuration options to this file as well.

To verify that MongoDB is running, search for mongod in your running processes:

ps aux | grep -v grep | grep mongod

You can also view the log file to see the current status of your mongod process:/usr/local/var/log/mongodb/mongo.log.

Connect and Use MongoDB

To begin using MongoDB, connect a mongo shell to the running instance. From a new terminal, issue the following:

mongo

For information on CRUD (Create,Read,Update,Delete) operations, see:


Additional Information

Localhost Binding by Default

By default, MongoDB launches with bindIp set to 127.0.0.1, which binds to the localhost network interface. This means that the mongod can only accept connections from clients that are running on the same machine. Remote clients will not be able to connect to the mongod, and the mongod will not be able to initialize a replica set unless this value is set to a valid network interface.

This value can be configured either:

  • in the MongoDB configuration file with bindIp, or
  • via the command-line argument --bind_ip
caution

Before binding to a non-localhost (e.g. publicly accessible) IP address, ensure you have secured your cluster from unauthorized access. For a complete list of security recommendations, see Security Checklist. At minimum, consider enabling authentication and hardening network infrastructure. For more information on configuring bindIp, see IP Binding.

Troubleshooting ChecksumMismatchError

If you have previously installed an older version of the formula, you may encounter a ChecksumMismatchError resembling the following:

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.

To fix:

Remove the downloaded .tgz archive.

Retap the formula.

brew untap mongodb/brew && brew tap mongodb/brew

Retry the installation.

brew install mongodb-community@4.2

You have installed MongDB Community Edition on your MAC!


Related Articles:

Simflofy Installation Getting Started User Guide