Installing MongoDB on CentOS 7

MongoDB is a database engine that provides access to non-relational, document-oriented databases. It is known as a NoSQL database, because it is not based on a conventional table-oriented relational database framework.
Unlike relational databases, before you add data to a database, MongoDB doesn’t require a predefined schema. You can alter the schema at any time and as often as is necessary without having to setup a new database with an updated schema.
Add MongoDB Yum Repository
Create a new file, vi /etc/yum.repos.d/mongodb-org-4.2.repo so that you can install the latest release using yum. Add the following contents to the file:
vi /etc/yum.repos.d/mongodb-org-4.2.repo[mongodb-org-4.2] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/ gpgcheck=enabled=gpgkey=https://www.mongodb.org/static/pgp/server-4.2.ascInstall MongoDB
sudo yum install mongodb-orgConfigure MongoDB
The configuration file for MongoDB is located at /etc/mongod.conf, and is written in YAML format.
security: authorization: enabledStart and Stop MongoDB
Start the MongoDB service with the systemctl utility:
sudo systemctl start mongodTo restart the mongod process
sudo systemctl restart mongodThe stop command halts all running mongod processes.
sudo systemctl stop mongodMongoDB can also be started on boot:
sudo systemctl enable mongodCreate Database Users
1. Open the mongo shell
mongo2. By default, MongoDB connects to a database called test. Before adding any users, create a database to store user data for authentication:
use admin3. Use this command to create an administrative user with the ability to create other users on any database. For better security, change the values mongo-admin and password:
db.createUser({user: "mongo-admin", pwd: "password", roles:[{role: "userAdminAnyDatabase", db: "admin"}]})Hold these credentials for future reference in a secure spot. All the information will be displayed to the database except the password.
4. Exit the mongo shell:
quit()Backup and restore MongoDB Database
We use these tools:
- mongodump
- mongorestore
Command to mongodb backup
The mongodump command will create a backup / dump of the MongoDB database with the name specified by the --db [DB NAME] argument.
The --out /var/backups/`date +"%Y%m%d" argument specifies the output directory as /var/backups/[TODAY'S DATE] e.g. /var/backups/20190903
sudo mongodump --db [DB NAME] --out /var/backups/date +"%Y%m%d"It assumes that you have a running mongodb instance on port 27017.
Mongodb backup when database is on remote server or port is different on localhost
mongodump --host <hostname>: --db <source database name> --authenticationDatabase <source database name> -u <username> -p <password>Commands to restore mongodb database
sudo mongorestore --db [DB NAME] /var/backups/[BACKUP FOLDER NAME]Thankyou.