Contenido del curso

Fundamentos de MongoDB

Operadores

Conectando ao MongoDB via mongosh no Docker

Resumen

Conectar ao MongoDB pelo terminal é uma habilidade clave quando queres trabalhar com bases de dados na nuvem ou localmente sem depender de interfaces gráficas. Aqui vais aprender a usar mongosh, o shell oficial do MongoDB, aproveitando o contentor Docker que já tens a funcionar, para executar consultas reais sobre a base de dados Platzi Store.

Por que usar mongosh em vez do Compass ou dos playgrounds?

O mongosh é o terminal oficial do MongoDB e funciona como uma terceira via de conexão, junto ao Mongo Compass e aos playgrounds do VS Code. A grande vantagem é que não precisas instalar nada extra: o contentor Docker do Mongo já traz o mongosh internamente, então basta entrar nele e executar comandos.

¿Qué es mongosh? É o shell interactivo do MongoDB que te permite ligar-te a uma base de dados local ou no Atlas e executar consultas, comandos administrativos e scripts directamente desde o terminal.

Na prática, vais escolher entre três caminhos segundo o contexto: Compass para explorar visualmente, playgrounds para guardar consultas em ficheiros .mongodb, e mongosh para acesso directo via terminal [01:50].

Como entrar no contentor Docker do Mongo?

O primeiro passo é aceder ao contentor que já está a correr. Para isso usamos docker compose exec, que executa um comando dentro de um serviço activo.

Cria uma pasta chamada mongosh e dentro dela um ficheiro commands.markdown para registar as instruções [00:55]. Depois executa:

bash docker compose exec mongodb bash

Isto abre uma sessão bash dentro do contentor. Como os contentores são baseados em sistemas Unix, se executares ls ou ll vais ver uma estrutura de pastas semelhante a Ubuntu ou Fedora, independentemente de estares em Mac, Windows ou Linux [03:20].

Que comando uso para iniciar a ligação ao mongosh?

Uma vez dentro do contentor, escreves:

bash mongosh "<URL_DE_CONEXAO>"

A URL podes copiá-la do Mongo Compass se estás em local, ou do painel do MongoDB Atlas se queres ligar-te à nuvem. Ambas funcionam exactamente da mesma forma [04:10].

Que comandos posso executar dentro do mongosh?

Assim que a ligação for estabelecida, o prompt muda e ficas pronto para consultar. Estes são os comandos básicos que deves dominar:

  • show dbs: lista todas as bases de dados disponíveis no cluster, como admin, config, local e platzi-store.
  • use platzi-store: selecciona a base de dados com a qual queres trabalhar.
  • show collections: mostra as colecções dentro da base de dados activa.
  • db.products.find(): devolve todos os documentos da colecção products.

¿Cuál es la diferencia entre show dbs y show collections? show dbs lista as bases de dados do cluster; show collections lista as colecções dentro da base de dados que seleccionaste com use.

O interessante é que a sintaxe é exactamente a mesma que usas nos playgrounds do VS Code. A API do MongoDB não muda entre interfaces, o que facilita a tua curva de aprendizagem [05:30].

Posso conectar mongosh ao MongoDB Atlas com o mesmo método?

Sim. O fluxo é idêntico: copias a connection string que o Atlas te fornece, executas mongosh "<url>" e já podes correr show dbs ou db.products.find() sobre a tua base de dados na nuvem. É um excelente exercício para validar que dominas as três vias de conexão.

Quando faz sentido usar cada ferramenta?

Tens três pontos de entrada bem definidos para o teu fluxo de trabalho com MongoDB:

  1. Mongo Compass para explorar dados visualmente e navegar colecções.
  2. Playgrounds do VS Code para guardar consultas reutilizáveis em ficheiros .mongodb.
  3. mongosh para tarefas rápidas, scripts ou administração desde o terminal.

Apesar de mongosh ser potente, os playgrounds costumam ser a opção mais dinâmica no dia a dia porque te permitem versionar as consultas junto ao código do projecto.

Qual destas três vias preferes para o teu fluxo de trabalho? Conta nos comentários como estás a organizar as tuas conexões.

      Conectando ao MongoDB via mongosh no Docker