Menu Docs
Página inicial do Docs
/ / /
Go

Início rápido do Go Driver

Nesta página

  • Configurar seu projeto
  • Use o Go Mod para iniciar um projeto
  • Adicionar MongoDB como dependência
  • Adicionar outras dependências
  • Criar um cluster MongoDB
  • Configurar um cluster de camada grátis no Atlas
  • Consulte seu cluster MongoDB a partir de seu aplicativo
  • Próximos passos

Este guia mostra como criar um aplicativo que utiliza o driver Go para conectar a um cluster do MongoDB Atlas. Se você preferir conectar ao MongoDB utilizando outro driver ou outra linguagem de programação, consulte nossa lista de drivers oficiais do MongoDB.

O driver Go permite que você se conecte e se comunique com clusters MongoDB a partir de um aplicativo Go.

O MongoDB Atlas é um serviço de banco de dados em nuvem totalmente gerenciado que hospeda seus dados em clusters MongoDB. Neste guia, mostramos como começar a usar seu próprio cluster gratuito (nenhum cartão de crédito necessário).

Siga as etapas abaixo para conectar seu aplicativo Go com um cluster do Atlas MongoDB.

Crie um novo diretório e inicialize seu projeto utilizando go mod.

mkdir go-quickstart
cd go-quickstart
go mod init go-quickstart

Utilize go get para adicionar o driver Go como dependência.

go get go.mongodb.org/mongo-driver/mongo

Use go get para adicionar quaisquer dependências adicionais. Este início rápido utiliza o pacote godotenv para ler uma cadeia de conexão do MongoDB de uma variável de ambiente para evitar a incorporação de credenciais dentro do código fonte.

go get github.com/joho/godotenv

Após configurar suas dependências de projeto Go, crie um cluster MongoDB onde você pode armazenar e gerenciar seus dados. Consulte o guia Introdução ao Atlas para configurar uma nova conta Atlas, um cluster MongoDB de nível gratuito, carregar conjuntos de dados e interagir com os dados.

Depois de concluir as etapas do guia do Atlas, você deverá ter um novo cluster MongoDB implantado no Atlas, um novo usuário do banco de dados e conjuntos de dados de amostra carregados em seu cluster.

Nesta etapa, você cria e executa um aplicativo que usa o driver Go para se conectar ao cluster MongoDB e executar uma query sobre os dados de amostra.

Você passa instruções para o driver sobre onde e como se conectar ao cluster do MongoDB em uma cadeia de caracteres chamada cadeia de conexão. Essa cadeia inclui informações sobre o nome do host ou o endereço IP e a porta do seu cluster, o mecanismo de autenticação, as credenciais do usuário, quando aplicável, e outras opções de conexão.

Para recuperar a cadeia de conexão do cluster e do usuário criados na etapa anterior, faça login na sua conta do Atlas e navegue até a seção Database e clique no botão Connect do cluster ao qual deseja se conectar, conforme mostrado abaixo.

Atlas Connection GUI cluster selection screen

Prossiga para a etapa Connect Your Application e selecione o driver Go. Em seguida, clique no botão Copy para copiar a connection string para a área de transferência, conforme mostrado abaixo.

Atlas Connection GUI connection string screen

Salve sua cadeia de conexão do Atlas em um local seguro que você pode acessar para a próxima etapa.

Para saber mais sobre como se conectar ao driver Go por meio do Atlas, consulte o guia de conexão do driver Atlas e selecione Go no menu suspenso Selecione a linguagem .

Em seguida, crie um arquivo para conter seu aplicativo denominado main.go no diretório base do seu projeto. Utilize o seguinte código de amostra para executar uma consulta no seu conjunto de dados de amostra no MongoDB Atlas.

Especifique sua cadeia de conexão do MongoDB Atlas como o valor da variável uri, ou crie uma variável de ambiente denominada MONGODB_URI e configure a cadeia de conexão do Atlas como seu valor.

export MONGODB_URI='<your atlas connection string>'

Observação

Certifique-se de substituir a seção "<password>" da cadeia de conexão pela senha que você criou para o usuário que tem permissões do atlasAdmin.

package main
import (
"context"
"encoding/json"
"fmt"
"log"
"os"
"github.com/joho/godotenv"
"go.mongodb.org/mongo-driver/bson"
"go.mongodb.org/mongo-driver/mongo"
"go.mongodb.org/mongo-driver/mongo/options"
)
func main() {
if err := godotenv.Load(); err != nil {
log.Println("No .env file found")
}
uri := os.Getenv("MONGODB_URI")
if uri == "" {
log.Fatal("Set your 'MONGODB_URI' environment variable. " +
"See: " +
"www.mongodb.com/pt-br/docs/drivers/go/current/usage-examples/#environment-variable")
}
client, err := mongo.Connect(context.TODO(), options.Client().
ApplyURI(uri))
if err != nil {
panic(err)
}
defer func() {
if err := client.Disconnect(context.TODO()); err != nil {
panic(err)
}
}()
coll := client.Database("sample_mflix").Collection("movies")
title := "Back to the Future"
var result bson.M
err = coll.FindOne(context.TODO(), bson.D{{"title", title}}).
Decode(&result)
if err == mongo.ErrNoDocuments {
fmt.Printf("No document was found with the title %s\n", title)
return
}
if err != nil {
panic(err)
}
jsonData, err := json.MarshalIndent(result, "", " ")
if err != nil {
panic(err)
}
fmt.Printf("%s\n", jsonData)
}

Execute o código de amostra com o seguinte comando a partir da sua linha de comando:

go run main.go

Quando você executa main.go, ele deve gerar os detalhes do filme do conjunto de dados de amostra, que se parece com o seguinte:

{
"_id": "573a1398f29313caabce9682",
...
"title": "Back to the Future",
...
}

Se você não receber nenhum resultado ou um erro, verifique se configurou corretamente a variável de ambiente e se carregou o conjunto de dados de amostra no cluster MongoDB Atlas.

Dica

Se a saída estiver vazia, verifique se você carregou os conjuntos de dados de exemplo no cluster.

Depois de concluir esta etapa, você deve ter um aplicativo funcional que use o driver Go para se conectar ao cluster MongoDB, executar uma query nos dados de amostra e imprimir o resultado.

Saiba como ler e modificar dados usando o driver Go em nosso guia CRUD de Fundamentos ou como executar operações comuns em nossos Exemplos de Uso.

Voltar

MongoDB go driver