Go 驱动程序快速入门
在此页面上
本指南向您介绍如何创建一个使用 MongoDB Go Driver连接 MongoDB Atlas 集群的应用程序。如果希望使用其他驱动程序或编程语言连接 MongoDB,请参阅我们的 MongoDB 官方驱动程序列表。
Go 驱动程序允许您从 Go 应用程序连接到 MongoDB 集群并与之通信。
MongoDB Atlas 是完全托管的云数据库服务,可在 MongoDB 集群托管数据。 在本指南中,我们将向您介绍 如何开始使用自己的免费(无需信用卡)集群。
按照以下步骤将 Go 应用程序与 MongoDB Atlas 集群进行连接。
设置您的项目
创建 MongoDB 集群
在 Atlas 中设置免费级集群
您可以在 MongoDB Atlas 上创建一个免费套餐 MongoDB 部署来存储和管理您的数据。MongoDB Altas 在云端托管和管理您的 MongoDB 数据库。
创建免费套餐集群
通读 Atlas 入门指南,以便设置新的 Atlas 帐户、免费套餐 MongoDB 集群、加载数据集并与数据交互。
完成这些步骤后,您将在 Atlas 部署一个新的 MongoDB 集群、一个新的数据库用户,并将示例数据集加载到此集群。
连接集群
您可以通过提供连接 URI(也称为连接字符串)来连接到 MongoDB 部署,它指示驱动程序如何连接到 MongoDB 部署以及连接时的行为方式。
连接字符串包含部署的主机名或 IP 地址和端口、身份验证机制、用户档案(如果适用)以及连接选项。
完成这些步骤后,您将拥有与 Atlas 集群相对应的连接字符串。
要了解如何通过 Atlas 连接 MongoDB Go Driver 的更多信息,请参阅 Atlas 驱动程序连接指南,然后从 Select your language 下拉列表中选择 Go。
从应用程序查询 MongoDB 集群
创建 Go 应用程序
将以下代码复制并粘贴到您的 main.go
文件中。此代码针对 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/zh-cn/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) }
运行应用程序
从命令行使用以下命令运行示例代码:
go run main.go
当您运行 main.go
时,它会从示例数据集中输出电影的详细信息,如下所示:
{ "_id": "573a1398f29313caabce9682", ... "title": "Back to the Future", ... }
提示
如果没有收到任何输出或错误,请检查环境变量是否已正确设置,并确保已将示例数据集加载到集群。
完成这些步骤后,您有一个正常运行的应用程序,它使用 MongoDB Go Driver连接到 MongoDB 集群,对示例数据运行查询并打印结果。
后续步骤
在 CRUD 操作部分了解如何使用 MongoDB Go Driver 读取和修改数据,或者从使用示例中了解如何执行常用操作。