sql >> Base de Datos >  >> NoSQL >> MongoDB

Cómo instalar MongoDB en Ubuntu 18.04

MongoDB es un moderno sistema de administración de bases de datos de documentos de código abierto diseñado para una persistencia de datos de alto rendimiento, alta disponibilidad y escalado automático, basado en la tecnología de punta de NoSQL . Bajo MongoDB , un registro es un documento, que es una estructura de datos que consta de pares de campo y valor (los documentos MongoDB son comparables a los objetos JSON).

Debido a que proporciona características de alto rendimiento y gran escalabilidad, se utiliza para crear aplicaciones modernas que requieren bases de datos potentes, de misión crítica y de alta disponibilidad.

En este artículo explicaremos cómo instalar MongoDB , administre su servicio y configure la autenticación básica en Ubuntu 18.04 .

Importante :Debe tener en cuenta que los desarrolladores de MongoDB solo ofrece paquetes para 64 bits LTS (soporte a largo plazo) Versiones de Ubuntu como 14.04 LTS (de confianza), 16.04 LTS (xenial), etc.

Paso 1:Instalación de MongoDB en Ubuntu 18.04

1. Los repositorios de paquetes de software oficiales de Ubuntu vienen con la última versión de MongoDB , y se puede instalar fácilmente con el administrador de paquetes APT.

Primero actualice la memoria caché del paquete de software del sistema para tener la versión más reciente de las listas del repositorio.

$ sudo apt update

2. A continuación, instale el paquete MongoDB que incluye varios otros paquetes como mongo-tools , mongodb-clientes , servidor mongodb y mongodb-server-core .

$ sudo apt install mongodb

3. Una vez que lo haya instalado correctamente, el servicio MongoDB se iniciará automáticamente a través de systemd y el proceso escuchará en el puerto 27017 . Puede verificar su estado usando el comando systemctl como se muestra.

$ sudo systemctl status mongodb

Paso 2:Administrar el servicio MongoDB

4. MongoDB la instalación viene como un servicio systemd y se puede administrar fácilmente a través de los comandos systemd estándar como se muestra.

Para dejar de ejecutar el servicio MongoDB, ejecute el siguiente comando.

$ sudo systemctl stop mongodb	

Para iniciar un servicio MongoDB, escriba el siguiente comando.

$ sudo systemctl start mongodb

Para reiniciar un servicio MongoDB, escriba el siguiente comando.

$ sudo systemctl restart mongodb	

Para deshabilitar el servicio MongoDB iniciado automáticamente, escriba el siguiente comando.

$ sudo systemctl disable mongodb	

Para habilitar nuevamente el servicio MongoDB, escriba el siguiente comando.

$ sudo systemctl enable mongodb	

Paso 3:habilite el acceso remoto a MongoDB en el cortafuegos

5. Por defecto MongoDB se ejecuta en el puerto 27017 , para permitir el acceso desde cualquier lugar que pueda usar.

$ sudo ufw allow 27017

Pero habilitar el acceso a MongoDB desde todas partes da acceso sin restricciones a los datos de la base de datos. Por lo tanto, es mejor dar acceso a la ubicación de la dirección IP específica al puerto predeterminado de MongoDB usando el siguiente comando.

$ sudo ufw allow from your_server_IP/32 to any port 27017 
$ sudo ufw status

6. Por defecto el puerto 27017 se escucha en la dirección local 127.0.0.1 solamente. Para permitir conexiones MongoDB remotas, debe agregar la dirección IP de su servidor a /etc/mongodb.conf archivo de configuración como se muestra.

bind_ip = 127.0.0.1,your_server_ip
#port = 27017

Guarde el archivo, salga del editor y reinicie MongoDB.

$ sudo systemctl restart mongodb

Paso 4:Cree el usuario raíz y la contraseña de la base de datos de MongoDB

7. Por defecto MongoDB viene con la autenticación de usuario deshabilitada, por lo tanto, se inicia sin control de acceso. Para iniciar el shell mongo , ejecute el siguiente comando.

$ mongo 

8. Una vez que se haya conectado al shell mongo , puede enumerar todas las bases de datos disponibles con el siguiente comando.

> show dbs

9. Para habilitar el control de acceso en su implementación de MongoDB para hacer cumplir la autenticación; requiriendo que los usuarios se identifiquen cada vez que se conectan al servidor de la base de datos.

MongoDB utiliza el mecanismo de autenticación de respuesta de desafío salado (DESCARGA ) mecanismo de autenticación por defecto. Uso de SCRAM , MongoDB verifica las credenciales de usuario proporcionadas con el nombre del usuario, la contraseña y la base de datos de autenticación (la base de datos en la que se creó el usuario y, junto con el nombre del usuario, sirve para identificar al usuario).

Debe crear un administrador de usuarios (análogo al usuario raíz en MySQL/MariaDB ) en la base de datos de administración. Este usuario puede administrar usuarios y roles, como crear usuarios, otorgar o revocar roles de usuarios y crear o modificar roles personalizados.

Primero cambie al administrador base de datos, luego cree el usuario raíz usando los siguientes comandos.

> use admin 
> db.createUser({user:"root", pwd:"[email protected]!#@%$admin1", roles:[{role:"root", db:"admin"}]})

Ahora salga del shell mongo para habilitar la autenticación como se explica a continuación.

10. El mongodb la instancia se inició sin --auth opción de línea de comando. Debe habilitar la autenticación de usuarios editando /lib/systemd/system/mongod.service archivo, primero abra el archivo para editarlo así.

$ sudo vim /lib/systemd/system/mongodb.service 

Bajo el [Service] sección de configuración, busque el parámetro ExecStart .

ExecStart=/usr/bin/mongod --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

Cámbialo por lo siguiente:

ExecStart=/usr/bin/mongod --auth --unixSocketPrefix=${SOCKETPATH} --config ${CONF} $DAEMON_OPTS

Guarde el archivo y salga.

11. 8. Después de realizar cambios en el archivo de configuración, ejecute 'systemctl daemon-reload ‘ para recargar unidades y reiniciar el servicio MongoDB y verificar su estado de la siguiente manera.

$ systemctl daemon-reload
$ sudo systemctl restart mongodb	
$ sudo systemctl status mongodb	

12. Ahora, cuando intentas conectarte a mongodb , debe autenticarse como usuario de MongoDB. Por ejemplo:

$ mongo -u "root" -p --authenticationDatabase "admin"

Nota :No se recomienda ingresar su contraseña en la línea de comandos porque se almacenará en el archivo de historial de shell y un atacante podrá verla más tarde.

¡Eso es todo! MongoDB es un moderno sistema de gestión de base de datos No-SQL de código abierto que proporciona alto rendimiento, alta disponibilidad y escalado automático.

En este artículo, hemos explicado cómo instalar y comenzar con MongoDB en Ubuntu 18.04 . Si tiene alguna consulta, utilice el formulario de comentarios a continuación para comunicarse con nosotros.