- 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
Follow these steps to install MongoDB Community Edition using the third- party brew package manager.
From a terminal, issue the following:
brew install firstname.lastname@example.org
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:
- the configuration file: /usr/local/etc/mongod.conf
- the log directory path: /usr/local/var/log/mongodb
- the data directory path: /usr/local/var/mongodb
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 email@example.com
To stop a mongod running as a macOS service, use the following command as needed:
brew services stop firstname.lastname@example.org
To run MongoDB (i.e. the mongod process) manually as a background process, issue the following:
mongod --config /usr/local/etc/mongod.conf --fork
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:
For information on CRUD (Create,Read,Update,Delete) operations, see:
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:
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.
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
To retry an incomplete download, remove the file above.
Remove the downloaded .tgz archive.
Retap the formula.
brew untap mongodb/brew && brew tap mongodb/brew
Retry the installation.
brew install email@example.com
You have installed MongDB Community Edition on your MAC!