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.
Criar um cluster de camada grátis
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.
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 do cluster criado na seção anterior, faça o seguinte:
Inicie sessão na sua conta Atlas .
Navegue até a seção Database na barra lateral e selecione Clusters.
Encontre o cluster ao qual deseja se conectar e clique no botão Connect.
Em Drivers, clique na opção .
Selecione "Ir" no menu de seleção Driver e a versão apropriada no menu de seleção Version.
Copie a área de transferência da string de conexão .
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 aplicativo 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 aplicativo
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
Saiba 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 de golang.