Ir al contenido principal

Motor de base de datos NoSQL para bases de datos orientadas a documentos.

MongoDB es la solución para las necesidades de bases de datos que se alejan de la gestión relacional tradicional: entra en una solución NoSQL utilizada por empresas como eBay y Forbes. La base de datos documental permite a los usuarios empezar a crear documentos en su base de datos sin necesidad de establecer una estructura documental, lo que permite a los usuarios editar sobre la marcha y escalar rápidamente. Debido a esta flexibilidad tanto en la estructura como en la gestión de los datos, MongoDB se utiliza a menudo como una solución de base de datos única para las empresas y organizaciones que tienen necesidades de bases de datos fluctuantes.

Construya su propia base de datos flexible con Linode's MongoDB Marketplace App.

Despliegue de la aplicación MongoDB Marketplace

El Linode Marketplace le permite desplegar fácilmente el software en un Linode utilizando el Linode Cloud Manager .

  1. Inicie sesión en el Cloud Manager y seleccione el enlace Marketplace en el menú de navegación de la izquierda. Esto muestra la página Linode Compute Create con la pestaña Marketplace preseleccionada.
  2. En la sección Seleccionar aplicación, seleccione la aplicación que desea desplegar.
  3. Rellene todas las opciones necesarias para la aplicación seleccionada, así como las opciones avanzadas que desee (que son opcionales). Consulte la sección Opciones de configuración para obtener más detalles.
  4. Rellene el resto del formulario tal y como se explica en la sección Creación de una instancia de computación.
  5. Haga clic en el botón Crear Linode. Una vez que Linode se haya aprovisionado y se haya encendido completamente, espere a que se complete la instalación del software. Si el Linode se apaga o se reinicia antes de ese momento, es probable que la instalación del software falle. Para determinar si la instalación se ha completado, abra la consola Lish de Linodey espere a que aparezca el indicador de inicio de sesión del sistema.
  6. Siga las instrucciones de la sección "Primeros pasos tras la implantación ".

La instalación del software debería completarse en 2-5 minutos después de que el Linode haya terminado el aprovisionamiento.

Opciones de configuración

Opciones de MongoDB

Estas son las opciones adicionales disponibles para esta Marketplace App:

CampoDescripción
Contraseña del usuario administrador de MongoDBLa contraseña del usuario administrador de Mongo. Se requiere.
Versión de MongoDBSeleccione la versión de MongoDB que desea instalar.
Correo electrónico de administración para el servidorLa dirección de correo electrónico de inicio de autoridad (SOA) para este servidor. Esta dirección de correo electrónico se añadirá al registro SOA del dominio. Este es un campo obligatorio si desea que el instalador cree registros DNS.
Su Linode API TokenSu Linode API Token es necesario para crear registros DNS. Si esto se proporciona junto con el subdomain y domain la instalación intenta crear registros DNS a través de Linode API . Si no tiene un token, pero quiere que la instalación cree registros DNS, debe crear uno antes de continuar.
SubdominioEl subdominio para el que desea que el instalador cree un registro DNS durante la instalación. La sugerencia dada es www. El subdominio sólo debe proporcionarse si también se proporciona un domain y API Token.
DominioEl nombre de dominio donde desea acceder a su aplicación. El instalador crea un registro DNS para este dominio durante la instalación si usted proporciona este campo junto con su API Token.
El usuario sudo limitado que se creará para el LinodeEsta es la cuenta de usuario limitada que se creará para el Linode. Esta cuenta tiene privilegios de usuario sudo.
La contraseña del usuario sudo limitadoEstablezca una contraseña para el usuario sudo limitado. La contraseña debe cumplir con los requisitos de validación de complejidad para una contraseña fuerte. Esta contraseña se puede utilizar para realizar cualquier acción en su servidor, similar a la de root, así que hágala larga, compleja y única.
La clave pública SSH que se utilizará para acceder al LinodeSi desea acceder a SSH a través de una clave pública (recomendado) en lugar de por contraseña, introduzca la clave pública aquí.
¿Desactivar el acceso root a través de SSH?Seleccione Yes para bloquear la cuenta raíz para que no pueda acceder al servidor a través de SSH. Seleccione No para permitir que la cuenta de root inicie sesión a través de SSH.

Opciones generales

Para obtener consejos sobre cómo rellenar las opciones restantes en el formulario Create a Linode, consulte Crear una instancia de computación. Algunas opciones pueden estar limitadas o tener valores recomendados basados en esta Marketplace App:

  • Distribuciones compatibles: Debian 11, Ubuntu 20.04 LTS
  • Plan mínimo recomendado: Se pueden utilizar todos los tipos y tamaños de planes, aunque considere la posibilidad de utilizar una Instancia Computacional de Alta Memoria para bases de datos más grandes en un entorno de producción.

Cómo empezar después de la implantación

Acceder al Shell de MongoDB

Una vez que MongoDB ha terminado de desplegarse, puedes acceder y administrarlo directamente desde la consola.

  1. Inicie sesión en su instancia de computación a través de SSH o Lish.
  2. Inicie el mongo shell ejecutando el siguiente comando. Cuando se le solicite, introduzca la contraseña del usuario administrador que estableció al crear esta instancia.mongo -u admin -p --authenticationDatabase admin El -u-p--authenticationDatabase en el comando anterior son necesarias para autenticar las conexiones al shell. Sin la autenticación, se puede acceder al shell de MongoDB pero no permitirá las conexiones a las bases de datos.El admin es un usuario puramente administrativo basado en los roles especificados. Se define como un administrador de usuarios para todas las bases de datos, pero no tiene ningún permiso de base de datos en sí mismo. Puede utilizarlo para crear usuarios adicionales y definir sus roles. Si está utilizando varias aplicaciones con MongoDB, configure diferentes usuarios con permisos personalizados para sus correspondientes bases de datos.

Crear una tabla de usuarios

  1. Como el admin usuario, cree una nueva base de datos para almacenar los datos regulares del usuario para la autenticación. El siguiente ejemplo llama a esta base de datos user-data:use user-data
  2. Los permisos para las diferentes bases de datos se manejan en bases de datos separadas roles objetos. Este ejemplo crea el usuario, example-usercon permisos de sólo lectura para el user-data y tiene permisos de lectura y escritura para el exampleDB que crearemos en el Gestionar datos y cobros Cree un nuevo usuario no administrativo para introducir los datos de prueba. Cambie ambos example-user y password a algo relevante y seguro:db.createUser({user: "example-user", pwd: "password", roles:[{role: "read", db: "user-data"}, {role:"readWrite", db: "exampleDB"}]}) Para crear usuarios adicionales, repita este paso como usuario administrativo, creando nuevos nombres de usuario, contraseñas y roles sustituyendo los valores adecuados.
  3. Salir del shell de mongo:quit()

Para más información sobre el control de acceso y la gestión de usuarios, así como otros consejos para asegurar sus bases de datos, consulte la Documentación de Seguridad de MongoDB.

Gestionar datos y cobros

Gran parte de la popularidad de MongoDB proviene de su facilidad de integración. Las interacciones con las bases de datos se realizan a través de métodos de JavaScript, pero existen controladores para otros lenguajes. Esta sección demostrará algunas características básicas, pero le animamos a que investigue más en función de su caso de uso específico.

  1. Abrir el shell de MongoDB utilizando el comando example-user que creamos arriba:mongo -u example-user -p --authenticationDatabase user-data
  2. Cree una nueva base de datos. Este ejemplo la llama exampleDB:use exampleDB Asegúrese de que el nombre de esta base de datos se corresponde con la que el usuario tiene permisos de lectura y escritura (añadimos estos permisos en la sección anterior).Para mostrar el nombre de la base de datos de trabajo actual, ejecute el comando db comando.
  3. Crear un nuevo colección llamado exampleCollection:db.createCollection("exampleCollection", {capped: false}) Si no está familiarizado con la terminología de MongoDB, puede pensar en una colección como algo análogo a una tabla en un sistema de gestión de bases de datos relacionales. Para más información sobre la creación de nuevas colecciones, consulte la documentación de MongoDB sobre el Método db.createCollection().

    Nota: Los nombres de las colecciones no deben incluir ciertos signos de puntuación, como los guiones. Sin embargo, es posible que no se produzcan excepciones hasta que se intente utilizar o modificar la colección. Para más información, consulte el manual de MongoDB restricciones de denominación
    .
  4. Cree datos de muestra para introducirlos en la base de datos de prueba. MongoDB acepta la entrada como documentos en forma de objetos JSON como los que aparecen a continuación. La página web a y b se utilizan variables para simplificar la entrada; también se pueden insertar objetos directamente a través de funciones.var a = { name : "John Doe", attributes: { age : 30, address : "123 Main St", phone : 8675309 }} var b = { name : "Jane Doe", attributes: { age : 29, address : "321 Main Rd", favorites : { food : "Spaghetti", animal : "Dog" } }} Tenga en cuenta que los documentos insertados en una colección no tienen por qué tener el mismo esquema, lo cual es una de las muchas ventajas de utilizar una base de datos NoSQL.
  5. Inserte los datos en exampleCollectionutilizando el insert método:db.exampleCollection.insert(a) db.exampleCollection.insert(b) La salida de cada una de estas operaciones mostrará el número de objetos escritos con éxito en la base de datos de trabajo actual:WriteResult({ "nInserted" : 1 })
  6. Confirme que el exampleCollection se ha creado correctamente:show collections La salida listará todas las colecciones que contengan datos dentro de la base de datos de trabajo actual:exampleCollection
  7. Ver los datos sin filtrar en el exampleCollection con la colección find método. Devuelve hasta los 20 primeros documentos de una colección, si no se pasa una consulta:db.exampleCollection.find() La salida se parecerá a la siguiente:

    { "_id" : ObjectId("5e68d4618bd4ea23cc3f5e96"), "name" : "John Doe", "attributes" : { "age" : 30, "address" : "123 Main St", "phone" : 8675309 } } { "_id" : ObjectId("5e68d4628bd4ea23cc3f5e97"), "name" : "Jane Doe", "attributes" : { "age" : 29, "address" : "321 Main Rd", "favorites" : { "food" : "Spaghetti", "animal" : "Dog" } } }

    Puede observar que los objetos que introducimos van precedidos de _id llaves y ObjectId valores. Son índices únicos generados por MongoDB cuando un _id no está definido explícitamente. ObjectId se pueden utilizar como claves primarias al introducir consultas, aunque para facilitar su uso, es posible que desee crear su propio índice como lo haría con cualquier otro sistema de base de datos.El find también puede utilizarse para buscar un documento o campo específico introduciendo un parámetro de término de búsqueda (en forma de objeto) en lugar de dejarlo vacío. Por ejemplo:

    db.exampleCollection.find({"name" : "John Doe"})

    La ejecución del comando anterior devuelve una lista de documentos que contienen el 

    {"name" : "John Doe"} objeto:{ "_id" : ObjectId("5e68d4618bd4ea23cc3f5e96"), "name" : "John Doe", "attributes" : { "age" : 30, "address" : "123 Main St", "phone" : 8675309 } }

La aplicación MongoDB Marketplace ha sido creada por Linode. Para obtener ayuda sobre la implantación de la aplicación, póngase en contacto con el servicio de asistencia técnica de Linode a través de la información que aparece en la barra lateral. Para obtener soporte sobre la herramienta o el software en sí, visite el sitio web de MongoDB Community.