Introducción
MongoDB es un sistema de gestión de bases de datos (DBMS) no relacional y orientado a documentos. Clasificada como una base de datos de tipo NoSQL de código abierto y gratuita comúnmente utilizada en aplicaciones web modernas.
En este tutorial instalaremos MongoDB en Ubuntu 20.04 LTS Focal Fossa.
Si desea instalar MongoDB en un servidor remoto, continúe leyendo; de lo contrario, omita el primer párrafo "Conectando al servidor" y lea el siguiente.
Conexión al servidor
Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:
ssh root@IP_DEL_SERVER
A continuación, deberá ingresar la contraseña del usuario root.
Si no está utilizando el usuario root, puede iniciar sesión con otro nombre de usuario utilizando el mismo comando, luego cambie root a su nombre de usuario:
ssh nome_utente@IP_DEL_SERVER
Luego se le pedirá que ingrese su contraseña de usuario.
El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Instalar MongoDB
Los repositorios de paquetes oficiales de Ubuntu incluyen una versión actualizada de MongoDB, luego podemos instalar los paquetes necesarios usando apt.
Actualice la lista de paquetes de Ubuntu para tener la última versión de las listas de repositorios, desde la terminal:
sudo apt update
Instale MongoDB:
sudo apt install -y mongodb
El servidor de la base de datos se inicia automáticamente después de la instalación.
MongoDB
El proceso de instalación inició automáticamente MongoDB.
Para comprobar el estado:
sudo systemctl status mongodb
Debería ver un mensaje similar al siguiente:
● mongodb.service - An object/document-oriented database
Loaded: loaded (/lib/systemd/system/mongodb.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2020-05-06 14:32:04 CEST; 20s ago
Docs: man:mongod(1)
Main PID: 66235 (mongod)
Tasks: 23 (limit: 2286)
Memory: 42.4M
CGroup: /system.slice/mongodb.service
└─66235 /usr/bin/mongod --unixSocketPrefix=/run/mongodb --config /etc/mongodb.conf
El servidor MongoDB está en funcionamiento.
Podemos realizar una verificación adicional conectándonos directamente al servidor de la base de datos, desde el terminal:
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
Debería ver un mensaje similar al siguiente:
MongoDB shell version v3.6.8
connecting to: mongodb://127.0.0.1:27017
Implicit session: session { "id": UUID("20db019e-86d2-4f23-be71-d7ebf83c75e9") }
MongoDB server version: 3.6.8
{
"authInfo": {
"authenticatedUsers": [ ],
"authenticatedUserRoles": [ ]
},
"ok": 1
}
"ok": 1
Este valor nos dice que el servidor está funcionando correctamente.
Para detener el servidor:
sudo systemctl stop mongodb
Para iniciar el servidor:
sudo systemctl start mongodb
Para reiniciar el servidor:
sudo systemctl restart mongodb
Para deshabilitar el inicio automático de MongoDB:
sudo systemctl disable mongodb
Para volver a habilitar el inicio automático de MongoDB:
sudo systemctl enable mongodb
Para comprobar el estado del servidor:
sudo systemctl status mongodb
Configuración del cortafuegos
Para verificar el estado del firewall:
sudo ufw status
Si desea conectarse al servidor MongoDB de forma remota, y no solo desde localhost, debe permitir las conexiones entrantes en ufw.
Para permitir el acceso a MongoDB en su puerto predeterminado 27017 desde cualquier ubicación, ejecute el siguiente comando:
sudo ufw allow 27017
Si solo desea conectarse al servidor MongoDB desde ciertas ubicaciones confiables, como otro servidor que aloja una aplicación, puede especificar la dirección IP de otro servidor al que se le permitirá explícitamente conectarse:
sudo ufw allow from INDIRIZZO_IP/32 to any port 27017
Para comprobar el estado del cortafuegos con los cambios realizados:
sudo ufw status
Incluso si el puerto está abierto, MongoDB de forma predeterminada solo escucha en la dirección local 127.0.0.1. Para permitir conexiones remotas, agregue la dirección IP públicamente enrutable de su servidor al archivo mongodb.conf.
Abra el archivo de configuración de MongoDB:
sudo nano /etc/mongodb.conf
...
logappend=true
bind_ip = 127.0.0.1,INDIRIZZO_IP
#port = 27017...
Asegúrese de agregar una coma entre cada dirección IP.
Guarde y cierre el archivo.
Reinicie MongoDB:
sudo systemctl restart mongodb
Conclusión
La instalación y configuración de MongoDB en Ubuntu 20.04 LTS Focal Fossa ha finalizado.