Álvaro Mondéjar avatar

Megacurso programación en Python3 | 5. Conexión con base de datos MongoDB en la nube con mLab.com

mondeja

Published: 31 Jul 2017 › Updated: 31 Jul 2017Megacurso programación en Python3 |  5. Conexión con base de datos MongoDB en la nube con mLab.com

Megacurso programación en Python3 | 5. Conexión con base de datos MongoDB en la nube con mLab.com

Esta vez aprenderemos a conectar con una base de datos MongoDB en la nube. Para ello utilizaremos la web mLab.com, que nos provee de 500 MB de almacenamiento gratuito, así que créate una cuenta allí si aún no la tienes.

Todo el código mostrado a continuación se encuentra en este archivo.

En la carpeta del curso encontrarás el índice con las clases publicadas.

¿Qué es Mlab.com?

MLab es un servicio de base de datos en la nube completamente administrado que incluye el aprovisionamiento automatizado y la ampliación de bases de datos MongoDB, copia de seguridad y recuperación, supervisión y alerta 24/7, herramientas de administración basadas en web y soporte experto. La plataforma Database-as-a-Service de mLab potencia cientos de miles de bases de datos a través de AWS, Azure y Google y permite a los desarrolladores centrar su atención en el desarrollo de productos en lugar de en las operaciones.

mLab.com

Instalando dependencias

Para poder operar con MongoDB en Python debemos instalar la biblioteca pymongo. En la mayoría de los casos debería funcionar con:

pip3 install pymongo

Si deseas conocer el funcionamiento básico de pymongo puedes ver este tutorial.

Si tienes algún problema con la instalación de la biblioteca puedes acceder a su documentación.

Creando la base de datos

Para crear una base de datos simplemente le damos a 'create new', dentro de nuestro panel de usuario en mLab, y seguimos todos los pasos. Si tienes dudas puedes ver el siguiente vídeo:

Conectando con la base de datos

Si accedemos en mLab a nuestra base de datos, esta nos mostrará un URI con la cual podremos acceder a la base de datos desde nuestro cliente de pymongo. Para ello vamos a crear el siguiente código:

from pymongo import MongoClient
from os import environ

DATABASE_USERNAME = environ.get('DATABASE_USERNAME', '')
DATABASE_PASSWORD = environ.get('DATABASE_PASSWORD', '')

DATABASE_NAME = ''
BASE_URI = ''

DATABASE_URI = 'mongodb://{}:{}' + BASE_URI.format(DATABASE_USERNAME, 
                                                   DATABASE_PASSWORD)
mongo = MongoClient(DATABASE_URI)
db = mongo[DATABASE_NAME]

En DATABASE_NAME debemos indicar el nombre de la base de datos que hemos creado y en BASE_URI tenemos que introducir desde el símbolo @ hasta el final de la URI que nos ofrece mLab para nuestra base.

Si quieres saber más sobre cuando utilizar MongoDB y cuando no en tus proyectos puedes leer este artículo.

Crear una colección

Si le indicamos a MongoDB que se conecte a una colección que no existe, se creará automáticamente.

Para saber más sobre colecciones en MongoDB puedes leer este artículo.

Por lo tanto, si añadimos las siguientes líneas al código y lo ejecutamos...

db.users

...se creará una colección en la base de datos con el nombre users.

Leave Megacurso programación en Python3 | 5. Conexión con base de datos MongoDB en la nube con mLab.com to:

Written by

Investigador, inversor, programador, músico y espíritu libre. Nuestro planeta no es una bola.

Read more #mlab posts


Best Posts From Álvaro Mondéjar

We have not curated any of mondeja's posts yet. But you can encourage our curation team to review posts by visiting them regularly and by referring other readers. Because we give priority to frequently read content.

More Posts From Álvaro Mondéjar