Búsqueda de sitios web

Cómo instalar MongoDB 4 en CentOS 8


MongoDB es un popular motor de base de datos NoSQL de uso general y basado en documentos que almacena datos en formato JSON. Es gratuito y de código abierto y viene con un conjunto de características interesantes e ingeniosas como almacenamiento de archivos, replicación de datos, consultas ad-hoc y equilibrio de carga, solo por mencionar algunas. Algunas de las empresas de primera línea que han incorporado MongoDB en sus aplicaciones incluyen Adobe, Facebook, Google, eBay y Coinbase.

En este tutorial, aprenderá cómo instalar MongoDB en CentOS 8.

Paso 1: agregar el repositorio MongoDB

Dado que MongoDB no está presente en el repositorio predeterminado de CentOS 8, lo agregaremos manualmente. Primero, cree un archivo de repositorio como se muestra.

vi /etc/yum.repos.d/mongodb.repo

Pegue la configuración a continuación y guarde el archivo.

[mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/development/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc

Paso 2: Instale MongoDB en CentOS 8

Habiendo habilitado el repositorio, el siguiente paso será instalar MongoDB usando el siguiente comando dnf.

dnf install mongodb-org

A continuación, inicie y habilite MongoDB para que se inicie al arrancar ejecutando los siguientes comandos.

systemctl start mongod
sudo systemctl enable mongod

Para verificar el estado de MongoDB, ejecute:

systemctl status mongod

Alternativamente, puede utilizar la utilidad netstat para confirmar que efectivamente el servicio Mongod está escuchando.

netstat -pnltu

¡Excelente! Hemos confirmado que MongoDB está en funcionamiento.

Paso 3: acceda al shell de MongoDB

Ahora puede acceder al shell de MongoDB simplemente emitiendo el comando:

mongo

Debería obtener un resultado similar al que se muestra en la captura de pantalla siguiente.

Crear usuario administrador de MongoDBan

Ahora cambiemos de tema y creemos un usuario administrador.
Siempre es un buen consejo crear un usuario administrador con privilegios elevados para realizar tareas elevadas. Para hacerlo, primero acceda al shell de MongoDB:

mongo

A continuación, cambie al administrador de la base de datos ejecutando.

> use admin

Ahora cree un nuevo usuario de MongoDB ejecutando el siguiente código.

> db.createUser(
 {
 user: "mongod_admin",
 pwd: "P@ssword@2019",
 roles: [ { role: "userAdminAnyDatabase", db: "admin" } ]
 }
 )

Si tiene éxito, debería obtener el siguiente resultado.

Successfully added user: {
	"user" : "mongod_admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	]
}

Para enumerar los usuarios de MongoDB creados, ejecute.

> show users

Configurar la autenticación para MongoDB

Tal como están las cosas, todos los usuarios pueden acceder al shell y ejecutar cualquier comando, lo cual no se recomienda en absoluto por motivos de seguridad. Con eso en mente, necesitamos crear autenticación para el usuario administrador que acabamos de crear para evitar que otros usuarios ejecuten comandos sin autorización.

Para habilitar la autenticación, edite el archivo /lib/systemd/system/mongod.service, en la sección [Service], ubique y edite el parámetro Entorno como se muestra.

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

Guarde y salga del archivo de configuración.

Para que los cambios entren en vigor, vuelva a cargar el sistema y reinicie MongoDB.

systemctl daemon-reload
systemctl restart mongod

Si ahora intenta enumerar los usuarios sin autenticación, debería recibir un error como se muestra.

Para autenticarse, simplemente pase las credenciales como se muestra.

> db.auth('mongod_admin', 'P@ssword@2019')

Ahora puedes ejecutar cualquier comando después de eso. Intentemos enumerar a los usuarios una vez más:

> show users

Esta vez todo salió bien ya que se proporcionaron las credenciales de autenticación.

Para salir del motor de base de datos, ejecute.

> exit

Y eso es todo por hoy. Esperamos que ahora se sienta cómodo instalando MongoDB4 en su sistema CentOS 8 y comenzando con algunos pasos necesarios.