You don't have access to this class

Keep learning! Join and start boosting your career

Aprovecha el precio especial y haz tu profesión a prueba de IA

Antes: $249

Currency
$209
Suscríbete

Termina en:

2 Días
21 Hrs
11 Min
45 Seg

Conectándonos usando mongosh

9/30
Resources

Contributions 19

Questions 2

Sort by:

Want to see more contributions, questions and answers from the community?

En tu entorno local con docker instalado en tu maquina también te puedes conectar de la siguiente manera, sin le necesidad de entrar al bash primero.

docker compose exec mongodb mongosh "mongodb://nombreUsuario:contraseña@localhost:27017/?authMechanism=DEFAULT&tls=false"

Comando para conectarnos al (contenedor) servicio existente de Mongo con Docker

docker-compose exec mongodb bash

Comando para conectarnos con mongosh

mongosh "mongodb+srv://usuario:[email protected]/test"

Comando para ver bases de datos disponibles

show dbs

Comando para ver colecciones disponibles

show collections

Comando para usar una BD especifica

use("platzi_store")

Comando para usar una coleccion con Find

db.productos.find()

Para los que quieren conectarse a mongo atlas

Para desconectarse de la base de datos local o cualquiera utilizan:

.exit

Y luego vuelven a introducir el comando:

mongosh "[ Atlas url]" 

Para conectarse a Mongo usando mongoSH o la consola de comandos se debe hacer lo siguiente:

Cabe resaltar que donde va el nombre del servicio es el nombre configurado en el archivo .yml

  1. Correr el servicio en docker con el comando docker-compose up -d <NombreDelServicion>
  2. Ejecutar el comando para conectarse al servicio que esta corriendo: docker-compose exec <NombreDelServicion> bash
  3. Ya en la consola para conectarse con credenciales a la base de datos se usa el comando mongosh y el connection string:
    mongosh “mongodb://<username>:<password>@localhost:27017/?authMechanism=DEFAULT&tls=false”

    Cabe mencionar que el connection string debe estar entre comillas.
  4. Aqui adentro se pueden ejecutar los comandos para acceder a los documentos, colecciones, buscar, etc.

Con el comando exit salen de la db y vuelven a la consola normal

Tengo un comentario en el video anterior:
Donde usaba un host 27018
Por alguna razón cuando uso el código en Ubuntu en este orden me fallo la conexión:

Execute a command in a running container
ryuluis@DESKTOP-FLVVSO2:~/project-mongodb-alvarez$ sudo docker-compose exec mongodb bash
root@ad925d7738d5:/# mongosh "mongodb://root:root123@localhost:27018/?authMechanism=DEFAULT"    ------> Destaquen!
Current Mongosh Log ID: 64836d4a0e912db801282a3a
Connecting to:          mongodb://<credentials>@localhost:27018/?authMechanism=DEFAULT&directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.9.0
MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27018

Pero le cambie el codigo de puerto al normal que es 27017 y me logro funcionar con exito!!!


root@ad925d7738d5:/# mongosh "mongodb://root:root123@localhost:27017/?authMechanism=DEFAULT"
Current Mongosh Log ID: 64836d5700df216ffd188ffb
Connecting to:          mongodb://<credentials>@localhost:27017/?authMechanism=DEFAULT&directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.9.0
Using MongoDB:          5.0.18
Using Mongosh:          1.9.0

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

------
   The server generated these startup warnings when booting
   2023-06-09T18:08:05.366+00:00: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine. See http://dochub.mongodb.org/core/prodnotes-filesystem
   2023-06-09T18:08:06.287+00:00: /sys/kernel/mm/transparent_hugepage/enabled is 'always'. We suggest setting it to 'never'

En caso de que marque error cuando haces la conexión a mongosh. Es decir, que no te aparezca “Test” y que cuando presionas una tecla detiene el servicio.

Puedes hacer la conexión de la siguiente manera:

mongosh mongodb://admin:toor@localhost:27017/

Es decir, acortas la url únicamente hasta el puerto. Con esto solucione mi problema.

por fin chicos,por fin me salio despues de tanto batllar :p
Wowwww, Genial \n Esta vex me ha funcionado @Primer Intento . & esto me hace MUY Feliz :) \n Tal parece el error que cargaba venia desde la clase anterior y era uno insignificante \n ![](https://static.platzi.com/media/user_upload/image-9bccbfa0-26e7-483c-8df2-45658d3d27fb.jpg) \nCheeers x2 . Today is : Nov27-2024 .
un error que me paso fue que debi estar dentro de la carpeta donde esta el archivo yml
si les sale error al conectar con mongosh, pueden hacerlo tambien colocando mongo "string de conexion" `mongo "mongodb://root:root123@localhost:27017/?tls=false"` Nota:uso mongodb 4.4.18
generar cualquiera de las colecciones es la misma tarea! Muy cool esta clase

Me doy cuenta que en Mongo estas dos instrucciones tienen el mismo significado.

En Windows 10 me tira el siguiente error al ejecutar el comando:

docker-compose exec mongodb bash

El error dice :

the input device is not a TTY.  If you are using mintty, try prefixing the command with winpty

Lo solucione ejecutando el comando:

winpty docker-compose exec mongodb bash

Para los que tienen problemas al usar el comando mongosh sigan el siguiente tutorial:

Si no te funciona con docker-compose utliza docker:

docker exec -it <TU_CONTAINER_NAME> mongosh <"TU_CONNECTIO_ STRING O URI">

Al final docker-compose crea es un contenedor y con este comando puedes abrir directamente mongosh a tu base de datos.

Asegurate de tener instalado mongo comunity en tu PC y mongosh, para que pueda ayudarte en tu entorno local, tambien añade mongo a tu path.

que buen curso este era el curso que estaba esperando Gracias Nico

Aunque usar mongosh puede parece lo más hacker al momento de consultar la base de datos, no es lo mas cómodo