MongoDB es una base de datos NoSQL que ofrece una base de datos empresarial de alto rendimiento, alta disponibilidad y escalado automático. MongoDB es una base de datos NoSQL, por lo que no puede usar SQL (lenguaje de consulta estructurado) para insertar y recuperar datos, y no almacena datos en tablas como MySQL o Postgres. Los datos se almacenan en una estructura de "documento" en formato JSON (en MongoDB llamado BSON). MongoDB se introdujo por primera vez en 2009 y actualmente lo desarrolla la empresa MongoDB Inc.
"MongoDB solo proporciona paquetes para versiones de Ubuntu LTS (soporte a largo plazo) de 64 bits. Por ejemplo, 12.04 LTS (preciso), 14.04 LTS (fiable), 16.04 LTS (xenial), etc. " sitio mongodb.
Requisitos
- Servidor Ubuntu 16.04 - 64 bits
- Privilegios de raíz
Qué haremos en este tutorial:
- Instalar MongoDB
- Configurar MongoDB
- Conclusión
Instalar MongoDB en Ubuntu 16.04
Paso 1 - Importación de la clave pública
Las claves GPG del distribuidor de software son requeridas por el administrador de paquetes de Ubuntu apt (Advanced Package Tool) para garantizar la coherencia y la autenticidad del paquete. Ejecute este comando para importar claves MongoDB a su servidor.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
Paso 2:crear el archivo de lista de fuentes MongoDB
Cree un archivo de lista MongoDB en /etc/apt/sources.list.d/ con este comando:
echo "deb http://repo.mongodb.org/apt/ubuntu "$(lsb_release -sc)"/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
Paso 3 - Actualizar el repositorio
actualice el repositorio con el comando apt:
sudo apt-get update
Paso 4 - Instalar MongoDB
Ahora puede instalar MongoDB escribiendo este comando:
sudo apt-get install -y mongodb-org
Tenemos que crear un nuevo archivo de servicio systemd de MongoDB en el directorio '/lib/systemd/system'. Vaya a ese directorio y cree el nuevo archivo de servicio MongoDB 'mongod.service' con el editor vim.
cd /lib/systemd/system/
vim mongod.service
Pegue el script a continuación:
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
Documentation=https://docs.mongodb.org/manual
[Service]
User=mongodb
Group=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
Guarde el archivo y salga.
Ahora actualice el servicio systemd con el siguiente comando:
systemctl daemon-reload
Inicie MongoDB y agréguelo como un servicio que se iniciará en el momento del arranque:
systemctl iniciar mongod
systemctl habilitar mongod
Ahora verifique que MongoDB se haya iniciado en el puerto 27017 con el comando netstat.
netstat -plntu
Configurar nombre de usuario y contraseña de MongoDB
Cuando los paquetes de MongoDB están instalados, puede configurar el nombre de usuario y la contraseña para el servidor de la base de datos:
Paso 1:abrir mongo shell
Antes de configurar un nombre de usuario y una contraseña para MongoDB, debe abrir el shell de MongoDB en su servidor. Puede iniciar sesión escribiendo:
mongo
Si obtiene un error Inicialización global fallida:BadValue Invalid o no se ha establecido la configuración regional del usuario. Asegúrese de que las variables de entorno LANG y/o LC_* estén configuradas correctamente, pruebe el comando:
export LC_ALL=C
mongo
Paso 2:cambie al administrador de la base de datos
Una vez que esté en el shell de MongoDB, cambie a la base de datos llamada admin :
use admin
Paso 3:crear el usuario raíz
Crea el usuario root con este comando:
db.createUser({user:"admin", pwd:"admin123", roles:[{role:"root", db:"admin"}]})
Descripcion: Cree un administrador de usuario con contraseña admin123 y tenga el permiso/rol como raíz y la base de datos es admin .
Ahora escriba exit para salir del shell de MongoDB.
Paso 4:habilitar la autenticación mongodb
Edite el archivo de servicio mongodb '/lib/systemd/system/mongod.service' con su editor.
vim /lib/systemd/system/mongod.service
En el 'ExecStart ' línea 9, agregue la nueva opción '--auth '.
ExecStart=/usr/bin/mongod --quiet --auth --config /etc/mongod.conf
Guarde el archivo de servicio y salga de vim.
Vuelva a cargar el servicio systemd:
systemd daemon-reload
Paso 5:reinicie MongoDB e intente conectarse
Ahora reinicie MongoDB y conéctese con el usuario creado.
sudo service mongod restart
y conéctese al shell de MongoDB con este comando:
mongo -u admin -p admin123 --authenticationDatabase admin
y verá la salida como esta:
Conclusión
Una base de datos NoSQL muy conocida que ofrece alto rendimiento, alta disponibilidad y escalado automático es MongoDB . Es diferente de RDBMS como MySQL, PostgreSQL y SQLite, ya que no usa SQL para configurar y recuperar datos. MongoDB almacena datos en `documentos` llamado BSON (representación binaria de JSON con tipos adicionales de información). MongoDB solo está disponible para 64 bits Lanzamiento de Ubuntu de soporte a largo plazo.