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.
Configurar seu projeto
Criar um cluster MongoDB
Configurar um cluster de camada grátis no Atlas
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.
Crie um cluster de camada grátis .
Complete o guia Iniciar do MongoDB para configurar uma nova conta Atlas , criar um agrupamento MongoDB de camada grátis , carregar conjuntos de dados e interagir com os dados.
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.
Conecte-se ao 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.
Recupere sua string de conexão do MongoDB Atlas .
Para recuperar a string de conexão para a implantação criada na seção anterior, faça login na sua conta do Atlas e navegue até a página Clusters na seção Database. Clique no botão Connect para sua nova implementação.

Se você ainda não tiver um usuário de banco de dados configurado, o MongoDB solicitará que você crie e configure um novo usuário.
Clique no botão Drivers em Connect to your application e selecione "Ir" no menu de seleção Driver e a versão que melhor corresponde à versão instalada no menu de seleção Version.
Certifique-se de que a opção View full code sample esteja desmarcada para visualizar somente a string de conexão.
Atualize o espaço reservado para senha.
Cole esta string de conexão em um arquivo no editor de texto de sua preferência e substitua o espaço reservado <db_password> pela senha do usuário do banco de dados . A string de conexão já está preenchida com o nome de usuário do usuário do 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 saber mais sobre como se conectar ao Atlas usando o Driver Go do MongoDB e aplicando as opções de conexão, consulte o guia de conexão do driver do Atlas.
Consulte seu cluster MongoDB a partir de seu aplicativo
Adicione sua string de conexão.
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.
Criar seu aplicação Go .
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) }
Execute seu aplicação.
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.
Próximos passos
Aprenda como ler e modificar dados usando o MongoDB Go Driver na seção Operações CRUD.
