Installing MongoDB on a Mac What’s MongoDB? MongoDB is a document database which belongs to a family of databases called NoSQL - not only SQL. In MongoDB, records are documents which behave a lot like JSON objects in JavaScript. Values in documents can be looked up by their field’s key. MongoDB: Install on MacOS In this tutorial, we present a step by step tutorial on how to install MongoDB on Mac OS. The operating system considered for this tutorial is macOS 10.14 (Mojave). Navicat for MongoDB gives you a highly effective GUI interface for MongoDB database management, administration and development. Connect to local/remote MongoDB. MongoVUE by MongoVUE is a freemium application that gives you the possibility to administer, develop and manage MongoDB databases. Even though there is no version of MongoVUE for Mac available on the web, there are some other tools that you can use instead. This list provides you with some possible replacements for MongoVUE for Mac.
Download Mongodb For Mac
Here we explain how to install MongoDB in a stand-alone configuration on Ubuntu and Mac. Setting up a cluster is significantly more complicated. So we will explain that in another post.
Install MongoDB on Ubuntu
MongoDB comes in Free (Community), paid (Enterprise), and cloud (Atlas) editions. It’s not easy to find the free download on their landing page, but here it is.
If you are using Ubuntu, you don’t need the download. Just run these steps to update the code repository then use apt-get to install the product.
The configuration file is /etc/mongod. It’s not necessary to change anything for a single-cluster installation.
Now start the service. The d in mongod means daemon.
Look in the log to verify that it is running and look for any possible errors.
Then open the shell.
Create a database. Just using the word use creates the database.
Install MongoDB on Mac
Here we install MongoDB on Mac. Go to this web page and fill out the version information to download MongoDB.
Update the path and make a data directory.
Start the daemon, telling it where to find the database. There will be no log files, so look at stdout (i.e., the screen where you started it) for errors. With the Mac installation, there is no configuration file either as you can pass configuration options on the command line, which you can also do on Ubuntu and other platforms. Or you could create a configuration file and tell the daemon to use that.
Create a Database and add some data:
Create a collection. A collection is a group of documents, like a table in a regular RDBMS database. Notice that the use statement makes the db object come into scope, so you can use that for subsequent operations.
MongoDB stores documents in JSON format. So you can add any JSON. But as we will see below, you still need to tell it what fields you want to index.
Create an index. The -1 means descending order.
Add a data record:
MongoDB is an open-source document-oriented database that is designed to store a large scale of data and also allows you to work with that data very efficiently. It is categorized under the NoSQL(Not only SQL) database because the storage and retrieval of data in the MongoDB are not in the form of tables. This is the general introduction of MongoDB now we learn how to install MongoDB on your macOS ?.
You can install MongoDB using two different methods one is using .tgz tarball and another is using Homebrew. Here, we will discuss how to install MongoDB using .tgz
tarball, so you need to follow each step carefully :
Download MongoDB –
Step 1: Go to MongoDB Download Center to download MongoDB Community Server.
Here, You can select any version, OS, and package according to your requirement. For macOS we need to choose:
- Version: 4.2.2
- OS: macOS x64
- Package: TGZ
Mongodb Org Download
Step 2: When the download completes, you will get a TGZ file( with extension .tgz). Now, extract this file to wherever the location you want in your system. Like, as shown in the below image.:
Here, the bin folder is the most important folder which contains all the MongoDB related executables like mongo for command-line interface to interact with the database, mongod is a database, mongodumps is used for creating a binary export of the contents of a database, etc.
Setting Command Line Interface, i.e, mongo Shell –
Step 3: Now to run mongo shell we need to set an environment variable or path. You can set your path in .bash_profile
file If you are using Mojave OS or below, or you can set your path in .zprofile
file if you are using Catalina or above. If you do not have .bash_profile
or .zprofile
, then you can create them using the following two ways:
- Simply open Text Editor and save a file with a name .bash_profile or .zprofile in your home directory. This file is hidden in your home directory if you wish to see them then press
command + shift + .
in finder(in the Home). - You can also create them in the terminal by using the following commands:
- Go to home directory:
cd ~/
- Create a new file: touch
.bash_profile
or touch.zprofile
- Opening these files for editing in TextEdit: open -e .bash_profile or open -e .zprofile
- Read updated file: source ~/.bash_profile or source ~/.zprofile
- Go to home directory:
After creating or getting .bash_profile or .zprofile set your path. Like, as shown in the below image.:
Here, “/Users/anki/mongodb-macos-x86_64-4.2.2/bin
” is the path where the .tgz
file is extracted and “:$PATH
” allows to run the paths(other than MongoDB) presents in the .bash_profile
or .zprofile
. After entering the path in the .bash_profile
or .zprofile
save that file and then the terminal read the updated path using the source command.
Important Point: For Catalina users when you run mongo
or mongo --nodb
command in your terminal, your macOS would not allow to run mongo. So, to run mongo you need to give them permission manually, i.e, System Preferences > Security & Privacy > Allow Anyway. Same procedure to run mongod.
After setting up the command-line interface (monog Shell) of MongoDB when you try to start mongo Shell, it will look like as shown in the below image, here the connections are failing because we do not have a database server(i.e, mongod). To run mongo Shell you need a MongoDB server, i.e, mongod which will run locally on our system.
Setting Database Server, i.e, mongod –
Step 4: Before running mongod first we will create a folder or directory which will store all the data processed by the mongod. Or in other words, we will create a data directory in which mongod process will write data.
Important Point: For those who are using macOS Mojave or below they are allowed to use MongoDB default data directory of /data/db
. But those who are using macOS Catalina or above are not allowed to use MongoDB default data directory of /data/db
because Apple restricted access so, you need to create a different data directory and you are allowed to keep that directory wherever you want in your system. Or in other words, Catalina users are not able to use /data/db as a database folder instead of this you can use a non-root path like ~/data/db
. Like, as shown in the below image.
Here, MongoDB is the data directory where the mongod writes the data.
Step 5: Now we are going to run mongod with its data directory path. Here, mongod is the database server provided by the MongoDB. To start mongod you can use one of the following commands:
Here, sudo command means allow to give all the permissions to start the database. Like, as shown in the below image:
Here, sudo mongod –dbpath ~/MongoDB command to start mongod server and ~/MongoDB is data directory.
Run mongo Shell –
Step 6: Now we are going to connect our server (mongod) with mongo shell. So, keep that mongod terminal window and open a new terminal window and write mongo and now our mongo shell will successfully connect to the mongod.
Important Point: Please do not close the mongod terminal window if you close this terminal window your server will stop working and you will not connect to the mongo shell.
Now, you are ready to write queries in the mongo Shell.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
Recommended Posts:
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Mongodb For Mac
Please Improve this article if you find anything incorrect by clicking on the 'Improve Article' button below.