Instalar Mongodb6.X en Ubuntu22.04

Instalar Mongodb6.X en Ubuntu22.04

1. Introducción a Mongodb

1.1 ¿Qué es MongoDB?

Mongodb es una base de datos NoSQL multiplataforma orientada a documentos. Utiliza BSON similar a JSON con un esquema opcional para almacenar datos. Las aplicaciones pueden recuperar información en formato JSON.

1.2 Ventajas de MongoDB

  • Puede desarrollar rápidamente aplicaciones basadas en web, porque es flexible y no necesita crear tablas como bases de datos relacionales.
  • MongoDB almacena documentos, que almacenan una estructura similar a json.El llamado json es una matriz de cadenas

1.3 Clasificación de la base de datos MongoDB

  • Base de datos (base de datos): se utiliza para almacenar colecciones, y la base de datos también se divide en tamaños
  • Colección: una colección es similar a una matriz y se utiliza para almacenar documentos
  • Documento: El documento es la unidad más pequeña en la base de datos MongoDB

imagen.png-169.6kB

Relación MongoDB: base de datos (base de datos)> colección (colección)> documento (documento)

2. Instalar mongodb

2.1 Importar la clave pública de MongoDB6.0

root@Mongodb:~# curl -fsSL https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -

2.2 Actualizar el repositorio apt

root@Mongodb:~# apt update

2.3 Crear archivo de lista

root@Mongodb:~# echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-6.0.list

root@Mongodb:~# apt update

2.4 Instalar la dependencia libssl1.1 de MongoDB

root@Mongodb:~# curl -LO http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1-1ubuntu2.1~18.04.21_amd64.deb

root@Mongodb:~# dpkg -i libssl1.1_1.1.1-1ubuntu2.1~18.04.21_amd64.deb

2.5 instalar mongodb

root@Mongodb:~# apt-get install -y mongodb-org

3. Inicie el servicio MongoDB

#启动MongoDB服务
root@Mongodb:~# systemctl start mongod

#检查MongoDB服务状态
root@Mongodb:~# systemctl status mongod |grep active
     Active: active (running) since Tue 2023-02-21 16:54:50 CST; 10s ago

#设置服务开机自启动
root@Mongodb:~# systemctl enable mongod

4. Uso de MongoDB

4.1 Entrar en MongoDB

Debido a que la versión es 6.0, debe ingresarla en la terminal.Este mongoshcomando es equivalente al comando mongo antes de la versión 6.0

root@Mongodb:~# mongosh
Current Mongosh Log ID:	63f48e2e5d50ed0f2ed35d3c
Connecting to:		mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.7.1
Using MongoDB:		6.0.4
Using Mongosh:		1.7.1

For mongosh info see: https://docs.mongodb.com/mongodb-shell/


To help improve our products, anonymous usage data is collected and sent to MongoDB periodically (https://www.mongodb.com/legal/privacy-policy).
You can opt-out by running the disableTelemetry() command.

------
   The server generated these startup warnings when booting
   2023-02-21T16:54:50.226+08:00: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine. See http://dochub.mongodb.org/core/prodnotes-filesystem
   2023-02-21T16:54:50.700+08:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted
   2023-02-21T16:54:50.700+08:00: vm.max_map_count is too low
------

------
   Enable MongoDB's free cloud-based monitoring service, which will then receive and display
   metrics about your deployment (disk utilization, CPU, operation statistics, etc).
   
   The monitoring data will be available on a MongoDB website with a unique URL accessible to you
   and anyone you share the URL with. MongoDB may use this information to make product
   improvements and to suggest MongoDB products and deployment options to you.
   
   To enable free monitoring, run the following command: db.enableFreeMonitoring()
   To permanently disable this reminder, run the following command: db.disableFreeMonitoring()
------

test>

4.2 Ver todas las bases de datos en la base de datos MongoDB

test> show dbs
admin   40.00 KiB
config  12.00 KiB
local   40.00 KiB

4.3 Abrir o crear una nueva base de datos

MongoDB no necesita crear documentos por adelantado, se crea automáticamente cuando se usa

test> use fib
switched to db fib
fib>

4.4 Agregar colección

Una colección es equivalente a una tabla en una base de datos mysql

fib> db.createCollection('teacher')
{ ok: 1 }
fib> show collections
teacher

4.5 Insertar datos

fib> db.teacher.insert({_id:1,sname:'张三',sage:20})
DeprecationWarning: Collection.insert() is deprecated. Use insertOne, insertMany, or bulkWrite.
{ acknowledged: true, insertedIds: { '0': 1 } }

4.6 Consultar todos los registros

fib> db.teacher.find()
[ { _id: 1, sname: '张三', sage: 20 } ]

4.7 Operación de actualización

fib> db.teacher.update({_id:1},{$set:{sname:'李四'}})
DeprecationWarning: Collection.update() is deprecated. Use updateOne, updateMany, or bulkWrite.
{
  acknowledged: true,
  insertedId: null,
  matchedCount: 1,
  modifiedCount: 1,
  upsertedCount: 0
}

4.8 Consulta

4.8.1 Consultar registros con sname='Li Si'

fib> db.teacher.find({sname:'李四'})
[ { _id: 1, sname: '李四', sage: 20 } ]

4.8.2 Consultar los datos del nombre de la columna especificada

fib> db.teacher.find({},{sname:1})
[ { _id: 1, sname: '李四' } ]

4.8.3 Consulta de condición Y

fib> db.teacher.find({sname:'李四',sage:20})
[ { _id: 1, sname: '李四', sage: 20 } ]

4.8.4 Consulta de condición OR

fib> db.teacher.find({$or:[{sage:20},{sage:21}]})
[ { _id: 1, sname: '李四', sage: 20 } ]

4.8.5 Salida formateada

fib> db.teacher.find().pretty()
[ { _id: 1, sname: '李四', sage: 20 } ]

4.9 borrar

4.9.1 Eliminar datos

fib> db.teacher.remove({sname:'李四'})
DeprecationWarning: Collection.remove() is deprecated. Use deleteOne, deleteMany, findOneAndDelete, or bulkWrite.
{ acknowledged: true, deletedCount: 1 }

4.9.2 Eliminar colección

fib> db.teacher.drop()
true

Supongo que te gusta

Origin blog.csdn.net/weixin_43279138/article/details/129153533
Recomendado
Clasificación