Wednesday, July 3, 2024
HomeDatabasesHow to Install MongoDB on CentOS 8

How to Install MongoDB on CentOS 8

Introduction

MongoDB is a document-based NoSQL database application. Unlike MySQL, it allows data to be stored differently in different documents.

It allows for different fields in different documents, and the data structure is not permanently fixed.

In this tutorial, learn how to install MongoDB on CentOS 8.

How to install MongoDB on CentOS 8.How to install MongoDB on CentOS 8.

Prerequisites

Installing MongoDB on CentOS 8

Step 1: Add the MongoDB Software Repository

By default, MongoDB is not available in the official CentOS repositories. To add the MongoDB repositories, open a terminal window, and create a MongoDB repository configuration file:

sudo nano /etc/yum.repos.d/mongodb-org-4.2.repo

In the newly created repo configuration file, enter the following:

[mongodb-org-4.2]

name=MongoDB Repository

baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/

gpgcheck=1

enabled=1

gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

Save the file (Ctrl+o) and exit (Ctrl+x).

Note: At the time this article was written, MongoDB 4.2 was the latest version. Please check the MongoDB developer page for the latest version.

Step 2: Install MongoDB Software

Install MongoDB on CentOS 8 with the following command:

sudo yum install –y mongodb-org
screenshot of Installing MongoDB software on CentOS 8screenshot of Installing MongoDB software on CentOS 8

Step 3: Start the MongoDB Service

Start the MongoDB service by entering the following command:

sudo systemctl start mongod

If you receive an error that the unit is not found, run the following command, then try the previous command again:

sudo systemctl daemon-reload

If you’re using MongoDB as a permanent feature, you can set it to run at boot with the following command:

sudo systemctl enable mongod

To check whether the MongoDB service is running, use the following command:

sudo systemctl status mongod
Checking the MongoDB service status is runningChecking the MongoDB service status is running

Set Up and Configure MongoDB

Create MongoDB Admin User

Start by opening the Mongo shell for use. Enter the following command:

mongo

The prompt should change to a simple angle bracket.

>

Next, switch to the admin user account:

use admin
Switch to admin user in Mongo.Switch to admin user in Mongo.

Next, create an administrator user account for the Mongo database:

db.createUser(
 {
 user: "mdbadmin",
 pwd: "password",
 roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
 }
 )

The system should respond with the following:

Create an administrator user account for Mongo database.Create an administrator user account for Mongo database.

Note: Replace mdbadmin with an actual administrator username you want to use. Also, replace password with a unique strong, and secure password.

Next, display the list of users:

show users

The system should display details about the username just created:

Display user details.Display user details.

Exit the Mongo shell by entering the following:

quit()

Remember, the alphanumeric userId will be different from this example.

Configure MongoDB Authentication

By default, any user can perform any function in MongoDB. This will require users to have proper credentials to perform actions.

Step 1: Turn on Authentication

Start by editing the following file:

sudo nano /lib/systemd/system/mongod.service

Find the following line:

Environment="OPTIONS=--f /etc/mongod.conf"

Add the --auth option as follows:

Environment="OPTIONS= --auth -f /etc/mongod.conf"
Turning on Mongo authenticationTurning on Mongo authentication

Save the file (Ctrl+o) and exit (Ctrl+x).

Step 2: Reload the Services to Apply Changes

Reload the mongod.service:

sudo systemctl ––system daemon-reload
sudo systemctl restart mongod

Step 3: Test Mongo User Authentication

Switch to the Mongo shell and use the admin user to list all users:

mongo
use admin
show users

An error message should display:

Mongo error message requiring authenticationMongo error message requiring authentication

Next, use the following command to authenticate with the credentials created in Part 2:

db.auth(‘mdbadmin’, ‘password’)

The system should respond with the number 1:

1
Providing Mongo authenticationProviding Mongo authentication

Now, try running the show users command again:

show users

Replace mdbadmin and password with the actual username and password you created. The system should display the same user information as before in Part 2.

Conclusion

You should now have a working installation of MongoDB on your CentOS 8 system. Also, you should have a secure administrator account to prevent unauthorized access.

Next, learn how to create a database in MongoDB.

Was this article helpful?
YesNo

Shaida Kate Naidoo
am passionate about learning the latest technologies available to developers in either a Front End or Back End capacity. I enjoy creating applications that are well designed and responsive, in addition to being user friendly. I thrive in fast paced environments. With a diverse educational and work experience background, I excel at collaborating with teams both local and international. A versatile developer with interests in Software Development and Software Engineering. I consider myself to be adaptable and a self motivated learner. I am interested in new programming technologies, and continuous self improvement.
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments