Menu Docs

Início rápido do Go Driver

Este guia mostra como criar um aplicativo que usa o Driver Go do MongoDB para se 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.

1

Crie um novo diretório e inicialize seu projeto usando go mod, como mostrado nos seguintes comandos:

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

Utilize go get para adicionar o driver Go como uma dependência, conforme mostrado no comando a seguir:

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

Você pode criar uma implantação MongoDB de camada grátis no MongoDB Atlas para armazenar e gerenciar seus dados. O MongoDB Atlas hospeda e gerencia seu banco de dados MongoDB na nuvem.

1

Conclua o guia Começar a usar o Atlas para configurar uma nova conta do Atlas, criar um cluster MongoDB de camada grátis, carregar conjuntos de dados e interagir com os dados.

2

Depois de criar o usuário do banco de dados, salve o nome de usuário e a senha desse usuário em um local seguro para uso em uma próxima etapa.

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

Você pode se conectar à sua implantação do MongoDB fornecendo um URI de conexão, também chamado de connection string, que instrui o driver sobre como se conectar a uma implantação do MongoDB e como se comportar enquanto estiver conectado.

A cadeia de conexão inclui o nome do host ou endereço IP e porta de sua implantação, o mecanismo de autenticação, as credenciais do usuário quando aplicável, e opções de conexão.

1

Para recuperar sua string de conexão para o cluster que você criou na seção anterior, conecte-se na sua conta do Atlas. Navegue até a seção Database e clique em Clusters. Clique no botão Connect do cluster ao qual você deseja se conectar, como mostrado abaixo:

Atlas Connection GUI cluster selection screen

Em seguida, selecione a opção Drivers sob o cabeçalho Connect to your application. Selecione "Go" no menu de seleção Driver e a versão que melhor corresponde à versão instalada no menu de seleção Version.

2

Clique no botão à direita da string de conexão para copiá-la para a área de transferência, como mostrado na seguinte captura de tela:

Atlas Connection GUI connection string screen
3

Cole esta connection string em um arquivo no editor de texto de sua preferência e substitua os placeholders <db_username> e <db_password> pelo seu nome de usuário e senha de utilizador de banco de dados.

Salve este arquivo em um local seguro para uso na próxima etapa.

Depois de concluir estas etapas, você terá uma string de conexão que corresponde ao seu cluster do Atlas.

Para aprender como se conectar ao Driver Go do MongoDB por meio do Atlas, consulte o guia de conexão do driver Atlas e selecione Go no menu suspenso Select your language.

1

No seu terminal, execute o seguinte comando para criar uma variável de ambiente chamada MONGODB_URI e defina sua 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 <db_password> da string de conexão pela senha que você criou para o usuário que tem permissões atlasAdmin.

2

Execute o seguinte comando do diretório base do seu projeto para criar um novo arquivo chamado main.go:

touch main.go
3

Copie e cole o seguinte código no seu arquivo main.go. Este código executa uma query no seu conjunto de dados de amostra no MongoDB Atlas.

package main
import (
"context"
"encoding/json"
"fmt"
"log"
"os"
"go.mongodb.org/mongo-driver/v2/bson"
"go.mongodb.org/mongo-driver/v2/mongo"
"go.mongodb.org/mongo-driver/v2/mongo/options"
)
func main() {
uri := os.Getenv("MONGODB_URI")
docs := "www.mongodb.com/pt-br/docs/drivers/go/current/"
if uri == "" {
log.Fatal("Set your 'MONGODB_URI' environment variable. " +
"See: " + docs +
"usage-examples/#environment-variable")
}
client, err := mongo.Connect(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)
}
4

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 gera os detalhes do filme a partir do conjunto de dados de amostra, que se assemelha ao seguinte:

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

Dica

Se você não receber nenhum resultado ou um erro, verifique se configurou corretamente sua variável de ambiente e certifique-se de ter carregado os conjuntos de dados de amostra em seu cluster.

Depois de concluir estas etapas, você terá um aplicativo funcional que usa o Driver Go do MongoDB para se conectar ao cluster MongoDB, executar uma query nos dados de amostra e imprimir o resultado.

Aprenda como ler e modificar dados usando o Driver Go do MongoDB na seção Operações CRUD ou como executar operações comuns em nossos Exemplos de uso.