Instalación y configuración de Linux MongoDB

Tabla de contenido

Descripción general de MongoDB

Instalación e implementación de MongoDb

MongoDB establece contraseña

Comandos e instrucciones de operación de MongoDB

Descripción del archivo de configuración

Operación de copia de seguridad

Restaurar operación

Aplicación de escenarios prácticos de MongoDB



Descripción general de MongoDB


MongoDB es un sistema de gestión de bases de datos no relacional que utiliza un modelo de documento para almacenar datos. Los documentos en MongoDB son similares a los objetos JSON y pueden contener pares clave-valor y documentos anidados. MongoDB proporciona un potente lenguaje de consulta, marco de agregación, índices y cálculos que se ejecutan directamente en el almacén de datos.

MongoDB se usa ampliamente en muchos campos, especialmente en aplicaciones web y campos de big data. Es altamente escalable y flexible y puede manejar una variedad de tipos de datos. Además, MongoDB proporciona una variedad de herramientas y bibliotecas para facilitar que los desarrolladores lo utilicen en sus aplicaciones.

MongoDB puede almacenar datos importantes del sistema de gestión de contenido web, como contenido de páginas y artículos, etiquetas, etc., así como datos relacionados con el usuario.

Instalación e implementación de MongoDb


Los siguientes son los pasos detallados para instalar e implementar MongoDB en CentOS 7:

1. Agregue la biblioteca oficial de MongoDB.

Ejecute el siguiente comando para agregar el repositorio oficial de MongoDB:

```

sudo vim /etc/yum.repos.d/mongodb-org-4.4.repo

```

Agregue el siguiente contenido al archivo:

```

[mongodb-org-4.4]

nombre=Repositorio MongoDB

baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/

gpgcheck=1

habilitado=1

gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc

```

Guardar y Salir.

2. Instale MongoDB.

Ejecute el siguiente comando para instalar MongoDB:

```

sudo yum instalar mongodb-org -y

```

3. Configure MongoDB.

Abra el archivo de configuración de MongoDB:

```

sudo vim /etc/mongod.conf

```

Busque y modifique el siguiente contenido en el archivo:

- `bindIp`: La dirección IP vinculada. El valor predeterminado es "127.0.0.1", que es acceso local. Si se requiere acceso remoto, debe cambiarse a "0.0.0.0".

- `puerto`: número de puerto. El valor predeterminado es "27017", que se puede modificar según las necesidades reales.

Guardar y Salir.

4. Inicie MongoDB.

Ejecute el siguiente comando para iniciar MongoDB:

```

sudo systemctl iniciar mongod

```

5. Configure MongoDB para que sirva el sistema.

Ejecute el siguiente comando para configurar MongoDB como un servicio del sistema:

```

sudo systemctl habilitar mongod

```

Puede verificar el estado del servicio usando el siguiente comando:

```

sudo systemctl estado mongod

```

6. Inicie sesión en MongoDB.

Inicie sesión en MongoDB usando el siguiente comando:

```

mongo

```

Puede verificar la versión de MongoDB usando el siguiente comando:

```

db.versión()

```

Si MongoDB se instala correctamente, se debe generar el número de versión de MongoDB.

Los anteriores son los pasos detallados para instalar e implementar MongoDB en CentOS 7.

MongoDB establece contraseña


Después de instalar MongoDB, no hay una contraseña predeterminada, puede iniciar sesión directamente en MongoDB para comenzar a usarlo. Sin embargo, en un entorno de producción, se recomienda encarecidamente configurar los ajustes de seguridad de MongoDB, como habilitar la autenticación, etc.

Si necesita configurar una cuenta de administrador y establecer una contraseña, siga estos pasos:

1. Inicie sesión en MongoDB usando mongo shell.

2. Ingrese a la base de datos del administrador:

```

usar administrador

```

3. Cree una cuenta de administrador:

```

db.createUser({ usuario: "admin", pwd: "su contraseña", roles: [ { rol: "userAdminAnyDatabase", db: "admin" } ] })

(Donde "tucontraseña" es la contraseña que deseas establecer).

[Esto es para crear un usuario llamado "admin" en la base de datos MongoDB, la contraseña del usuario es "su contraseña" (la contraseña puede cambiarla usted mismo) y otorgarle permiso al usuario para realizar operaciones de administración de usuarios en todas las bases de datos. Específicamente, al usuario se le otorgó la función "userAdminAnyDatabase" en la base de datos "admin", que le permite crear, modificar y eliminar usuarios en cualquier base de datos.

```

[La información reportada es que este es un comando de base de datos MongoDB, lo que indica que se agregó exitosamente un usuario llamado "admin" y que este usuario tiene la autoridad para realizar operaciones de administración de usuarios en cualquier base de datos. En concreto, este usuario puede crear, modificar y eliminar otros usuarios, así como otorgar y revocar permisos de otros usuarios.

4. Salga de mongo shell y reinicie el proceso mongod:

```

sudo systemctl detener mongod

sudo systemctl iniciar mongod

```

5. Use el shell mongo para iniciar sesión en MongoDB nuevamente y use el siguiente comando para verificar el inicio de sesión:

```

mongo -u admin -p su contraseña --authenticationDatabase admin

```

[Este es el comando para conectarse a la base de datos MongoDB, donde:

- `-u admin` significa usar el usuario con el nombre de usuario "admin" para conectarse;
- `-p yourpassword` significa usar el usuario con la contraseña "yourpassword" para conectarse;
- `--authenticationDatabase admin` significa el La base de datos de autenticación es "admin" ".

Este comando le pedirá que ingrese una contraseña. Después de ingresar la contraseña correcta, podrá conectarse a la base de datos MongoDB. 】 

Los anteriores son los pasos para crear y configurar una cuenta de administrador en MongoDB. Preste atención a la seguridad y complejidad de la contraseña. Si no configura una cuenta de administrador, MongoDB no tiene una contraseña de forma predeterminada.

Comandos e instrucciones de operación de MongoDB


Las siguientes son operaciones de comando e instrucciones comunes para MongoDB:

1. mostrar bases de datos

Muestra una lista de todas las bases de datos.

2. utilice <nombrebd>

Seleccione la base de datos a utilizar. Si la base de datos no existe, se crea una nueva base de datos.

3. db.<colección>.find()

Busque documentos en una colección específica, por ejemplo:

```

db.usuarios.find()

```

[Primero debes crear el documento antes de poder encontrarlo. Completa primero el punto 4]

4. db.<colección>.insertOne()

Inserte un nuevo documento en la colección especificada, por ejemplo:

```

db.users.insertOne( { nombre: "John", edad: 30, ciudad: "Nueva York" } )

```

5. db.<colección>.updateOne()

Actualice un documento en la colección especificada, por ejemplo:

```

db.usuarios.updateOne(

   { nombre: "Juan" },

   { $conjunto: { ciudad: "San Francisco" } }

)

```

[La información de retroalimentación indica: Este es el resultado devuelto de una operación de base de datos MongoDB, que indica que un documento se actualizó exitosamente, donde:

- `reconocido` indica si la operación está confirmada, aquí verdadero indica confirmación.
- `matchedCount` indica la cantidad de documentos que cumplen con las condiciones de actualización. Aquí, 1 indica que un documento se ha actualizado.
- `modifiedCount` indica el número de documentos realmente modificados, donde 1 indica que un documento se modificó correctamente.

6. db.<colección>.deleteOne()

Eliminar un documento de la colección especificada, por ejemplo:

```

db.users.deleteOne ({nombre: "John"})

```

[La información de comentarios indica: Este es el resultado de una operación de base de datos MongoDB. Entre ellos, "reconocido" indica si la operación está confirmada, si es verdadero, indica que la operación está confirmada, "deletedCount" indica el número de documentos eliminados. Entonces, este resultado devuelto indica que un documento se eliminó correctamente.

7. db.<colección>.count()

Devuelve el número de documentos de la colección especificada.

8. db.<colección>.drop()

 [La información de los comentarios es verdadera indica que la eliminación se realizó correctamente]

Elimina la colección especificada.

9. db.createUser()

Cree un nuevo usuario de base de datos.

Por ejemplo, si desea crear un usuario con un nombre de usuario de `testuser`, una contraseña de `testpassword`, una función de `readWrite` y una base de datos de `testdb`, puede usar el siguiente comando:

```

db.createUser( { usuario: "testuser", pwd: "testpassword", roles: [ { rol: "readWrite", db: "testdb" } ] } )

```

Tenga en cuenta que `db.createUser()` solo se puede ejecutar con privilegios de administrador. Si no tiene derechos de administrador, primero debe iniciar sesión en MongoDB con una cuenta de administrador y luego ejecutar `db.createUser()`.

10. db.dropBase de datos()

Elimine la base de datos utilizada actualmente.

1. Abra el shell de MongoDB y conéctese a la base de datos que desea eliminar.

2. Ingrese el comando `use <database_name>` en el shell para cambiar a la base de datos que desea eliminar.

3. Ingrese el comando `db.dropDatabase()` para eliminar la base de datos actualmente conectada.

Nota: Este comando eliminará permanentemente la base de datos y todos sus datos, así que utilícelo con precaución.

11. db.estads()

Obtenga información de estado sobre la base de datos utilizada actualmente.

Las anteriores son operaciones de comando e instrucciones comunes para MongoDB, que pueden satisfacer las necesidades de la mayor parte del trabajo diario.

Descripción del archivo de configuración


El archivo de configuración de MongoDB es un archivo de texto que se utiliza para especificar la información de configuración del tiempo de ejecución de MongoDB. Iniciar MongoDB usando un archivo de configuración puede hacer que sea más conveniente administrar y configurar MongoDB.

El archivo de configuración de MongoDB debe especificarse al inicio, generalmente usando el comando `mongod --config`.

Los siguientes son parámetros comunes de los archivos de configuración de MongoDB y sus descripciones:

- bindIp: la dirección IP vinculada. El valor predeterminado es `0.0.0.0`, lo que significa que todas las direcciones IP se pueden conectar. El acceso a MongoDB se puede restringir especificando una dirección IP específica o varias direcciones IP.

- puerto: el puerto en el que escucha MongoDB. El número de puerto predeterminado es 27017.

- dbpath: la ruta de la carpeta utilizada por la base de datos MongoDB. La ruta predeterminada es `/data/db`.

- logpath: la ruta al archivo de registro de MongoDB.

- logappend: si se establece en verdadero, los archivos de registro de MongoDB usan el modo agregar.

- silencioso: si se establece en verdadero, MongoDB no genera ninguna información de registro.

- pidfilepath: ruta del archivo de identificación del proceso MongoDB.

- maxConns: el número máximo de conexiones permitidas por MongoDB, el valor predeterminado es `20000`.

- maxIncomingConnections: El número máximo de conexiones que MongoDB permite abrir al mismo tiempo. El valor predeterminado es `65536`.

- almacenamiento: motor de almacenamiento MongoDB, el valor predeterminado es `wiredTiger`.

Un comando de ejemplo para iniciar MongoDB usando un archivo de configuración es el siguiente:

```

mongod --config /etc/mongod.conf

```

Los anteriores son los parámetros y descripciones comunes de los archivos de configuración de MongoDB. En la práctica, los valores de los parámetros deben ajustarse según las necesidades específicas y las condiciones del hardware para lograr una eficiencia de rendimiento óptima.

Operación de copia de seguridad


MongoDB tiene múltiples métodos de copia de seguridad, incluida la copia de seguridad en caliente y la copia de seguridad en frío.

[Cuando utilice copias de seguridad en frío y en caliente, trate de no utilizarlas al mismo tiempo]

1. Copia de seguridad en caliente

La copia de seguridad en caliente es una forma de realizar una copia de seguridad de MongoDB mientras se está ejecutando. Los pasos específicos son los siguientes:

(1) Utilice el comando mongodump para exportar datos de copia de seguridad de MongoDB. El siguiente comando exporta los datos de la copia de seguridad al directorio `/data/backup`:

```

mongodump --out /datos/copia de seguridad

```

(2) Si necesita comprimir los datos de la copia de seguridad exportados, puede utilizar el siguiente comando:

```

tar -czvf backup.tar.gz /datos/backup

```

2. Copia de seguridad en frío

La copia de seguridad en frío es una forma de realizar una copia de seguridad de MongoDB cuando se encuentra en un nuevo estado de inicio. Los pasos específicos son los siguientes:

(1) Utilice el comando mongodump de MongoDB para exportar los datos de copia de seguridad de MongoDB. El siguiente comando exporta los datos de la copia de seguridad al directorio `/data/backup`:

```

mongodump --out /datos/copia de seguridad

```

(2) Detenga el servicio MongoDB:

```

sudo systemctl detener mongod

```

(3) Utilice el comando tar para comprimir los datos de la copia de seguridad del embudo en un archivo:

```

tar -czvf backup.tar.gz /datos/backup

```

 Controlar

 vim abre backup.tar.gz

(4) Inicie el servicio MongoDB:

```

sudo systemctl iniciar mongod

```

La copia de seguridad es una parte importante de la gestión de MongoDB y la copia de seguridad periódica de la base de datos MongoDB es uno de los medios importantes para garantizar la seguridad de los datos. Para sistemas de producción, se recomienda una solución de respaldo automatizada.

Restaurar operación


MongoDB usa el comando mongorestore para restaurar los datos de la copia de seguridad en MongoDB. Los siguientes son los pasos para restaurar los datos de la copia de seguridad de MongoDB:

(1) Descomprima el archivo de copia de seguridad

Primero, debes descomprimir el archivo de copia de seguridad de MongoDB. Suponiendo que el archivo de respaldo `backup.tar.gz` está descomprimido en el directorio `/data/backup`, use el siguiente comando para descomprimir el archivo de respaldo:

```

tar -xzvf backup.tar.gz -C /datos/copia de seguridad

```

(2) Detener el servicio MongoDB

Durante la restauración de los datos de la copia de seguridad, es necesario detener el servicio MongoDB para evitar sorpresas. Detenga el servicio MongoDB usando el siguiente comando:

```

sudo systemctl detener mongod

```

(3) Utilice el comando mongorestore para restaurar los datos de la copia de seguridad

Utilice el comando mongorestore para restaurar los datos de la copia de seguridad en MongoDB. El siguiente comando restaura los datos de la copia de seguridad en MongoDB:

```

mongorestore /datos/copia de seguridad

```

Este comando restaura los datos de la copia de seguridad a la colección y base de datos originales. También puede restaurar los datos de la copia de seguridad a una nueva base de datos especificando el parámetro `--db`.

(4) Reinicie el servicio MongoDB

Después de restaurar los datos de la copia de seguridad, reinicie el servicio MongoDB:

```

sudo systemctl iniciar mongod

```

Los anteriores son pasos simples para restaurar los datos de respaldo de MongoDB. En la práctica, se requiere precaución al realizar copias de seguridad y restaurar datos para garantizar la integridad y seguridad de los datos.

Aplicación de escenarios prácticos de MongoDB


Quiere crear una tienda minorista en línea, que necesita procesar datos de miembros, datos de pedidos, datos de productos, etc. Para guardar y administrar estos datos, puede utilizar MongoDB.

1. Diseñar esquema de datos

Para datos de una tienda minorista en línea, puede diseñar tres colecciones de MongoDB:

- Colección de información de miembros (Miembros): Esta colección contiene información básica de los miembros, como nombre, correo electrónico, dirección, historial de compras, etc.

- Recopilación de información de pedidos (Pedidos): Esta recopilación contiene información sobre todos los pedidos, incluido el número de pedido, nombre del producto, precio unitario, cantidad, tarifa de envío, etc.

- Recopilación de información de productos (Productos): Esta colección contiene información sobre todos los productos en venta, como nombre, descripción, precio, inventario, etc.

Puede utilizar el formato de documento de MongoDB para almacenar los datos de cada colección. Por ejemplo, para una recopilación de información de membresía, podría utilizar el siguiente formato de documento:

```

{

   _id: Id. de objeto ("5f096745c83ab13f9d887137"),

   nombre: "John Smith",

   correo electrónico: "[email protected]",

   dirección: "123 Main St, Anytown USA",

   historial de compras: [

      {

         artículo: "Producto A",

         fecha: ISODate("2022-01-01T10:00:00Z"),

         precio: 99,99

      },

      {

         artículo: "Producto B",

         fecha: ISODate("2022-01-05T14:30:00Z"),

         precio: 49,99

      }

   ]

}

```

Para recopilaciones de información de pedidos y recopilaciones de información de productos, puede utilizar formatos de documentos similares para almacenar datos.

2. Insertar datos

Antes de comenzar a ejecutar su tienda minorista en línea, debe insertar algunos datos de prueba en MongoDB. Puede utilizar el comando insertMany de MongoDB para insertar conjuntos de datos por lotes:

mongo shell Inicie sesión en mongdb y escriba el siguiente comando en la línea de comando

```

db.members.insertMany([

   {

      nombre: "John Smith",

      correo electrónico: "[email protected]",

      dirección: "123 Main St, Anytown USA",

      historial de compras: [

         {

            artículo: "Producto A",

            fecha: ISODate("2022-01-01T10:00:00Z"),

            precio: 99,99

         },

         {

            artículo: "Producto B",

            fecha: ISODate("2022-01-05T14:30:00Z"),

            precio: 49,99

         }

      ]

   },

   {

      nombre: "Jane Doe",

      correo electrónico: "[email protected]",

      dirección: "456 Oak St, otra ciudad de EE. UU.",

      historial de compras: [

         {

            artículo: "Producto C",

            fecha: ISODate("2022-01-10T09:45:00Z"),

            precio: 149,99

         },

         {

            artículo: "Producto A",

            fecha: ISODate("2022-01-15T11:30:00Z"),

            precio: 99,99

         }

      ]

   }

]);

db.pedidos.insertMany([

   {

      número_pedido: "1001",

      nombre_producto: "Producto A",

      precio: 99,99,

      Cantidad: 2,

      envío: 5,99,

      fecha_pedido: FechaISO("2022-01-01T10:00:00Z")

   },

   {

      número_pedido: "1002",

      nombre_producto: "Producto B",

      precio: 49,99,

      cantidad: 3,

      envío: 7,99,

      fecha_pedido: FechaISO("2022-01-05T14:30:00Z")

   }

]);

db.productos.insertMany([

   {

      nombre: "Producto A",

      descripción: "¡Un gran producto!",

      precio: 99,99,

      existencias: 100

   },

   {

      nombre: "Producto B",

      descripción: "¡Otro gran producto!",

      precio: 49,99,

      existencias: 50

   },

   {

      nombre: "Producto C",

      descripción: "¡El mejor producto de todos!",

      precio: 149,99,

      existencias: 25

   }

]);

```

 

3. Consultar datos

Supongamos que desea mostrar el historial de compras de un determinado miembro en su tienda minorista en línea, puede utilizar la siguiente consulta para recuperar los datos:

Utilice el comando para ver

```

db.members.find({ nombre: "John Smith"})

 

Supongo que te gusta

Origin blog.csdn.net/2302_77750172/article/details/131185161
Recomendado
Clasificación