Guía de instalación de MongoDB en Debian 12

Índice

MongoDB es un sistema de base de datos NoSQL, orientado a documentos y de código abierto. Este SGBD no guarda los documentos y tablas como ocurre con los relacionales (Oracle, PostgreSQL, MariaDB, MySQL…), sino que lo hace en estrucuturas de datos en formato BSON llamadas documentos. En este post te cuento cómo puedes instalar este sistema gestor de base de datos en un servidor con Debian 12.

Instalación de MongoDB

Para instalar MongoDB, en primer lugar, se deben instalar los paquetes pnupg y curl.

sudo apt-get install gnupg curl

A continuación se debe importar la clave pública de Mongo.

curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \
   sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \
   --dearmor

Posteriormente se debe crear un fichero de fuentes en el directorio sorurces.list.d:

echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] http://repo.mongodb.org/apt/debian bookworm/mongodb-org/7.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list

A partir de este punto, para instalar MongoDB se puede seguir el procedimiento habitual: actualizar apt e instalar el paquete:

sudo apt update
sudo apt install mongodb-org

Se puede comprobar porque tras finalizar el proceso de instalación se han creado los directorios /var/lib/mongodb y /var/log/mongodb.

ls -l /var/lib/ | grep mongodb
ls -l /var/log/ | grep mongodb

Configuración de MongoDB

Antes de comenzar a usar MongoDB es necesario arrancar el servidor y comprobar su estado:

sudo systemctl start mongodb
sudo systemctl status mongodb

Además, se debe habilitar el servicio para que su funcionamiento sea persistente durante los reinicios de la máquina:

sudo systemctl enable mongodb

Acceder al servidor de MongoDB

Finalmente, se puede acceder al servicio de MongoDB instalado en la máquina local ejecutando el comando mongosh:

Warning

MongoDB usa el puerto 27017. Si tu servidor se aloja en una máquina remota deberás revisar que el cortafuegos permita conexiones por este puerto.

comments powered by Disqus

Relacionados

Ejecutar un pipeline de Jenkins con cada actualización de un repositorio

Para que Jenkins ejecute un pipeline cada vez que se actualice un repositorio git se pueden establecer varias configuraciones diferentes. En este caso, se incluye el Jenkinsfile en el repositorio de GitHub.

Leer

Empaquetadores y compresores/descompresores en Debian

Los empaquetadores y compresores/descompresores son paquetes fundamentales en cualquier distribución de un sistema operativo. En este post se analizan varios de estos paquetes disponibles para Debian y otras distribuciones GNU/Linux

Leer

Despliegue de aplicaciones escritas en Python

En este post se muestra un ejemplo de flujo de trabajo para desplegar aplicaciones escritas en Python desde el entorno de desarrollo hasta el entorno de producción.

Leer