去Mongo!
使用mongo-go-driver连接到MongoDB。
我在按照MongoDB Go Driver教程时遇到了困难,但最终成功连接到了Mongo数据库,所以我决定记录一下学习经历。
系统环境
-
- Win10
-
- Mongo version v4.0.6
- Go version go1.12 windows/amd64
写作业记录
在环境变量GOPATH/src下创建mongo/mongodb-test.go文件。
package main
import (
"context"
"fmt"
"log"
"go.mongodb.org/mongo-driver/mongo"
)
func main() {
// Rest of the code will go here
client, err := mongo.Connect(context.TODO(), "mongodb://localhost:27017")
if err != nil {
log.Fatal(err)
}
// Check the connection
err = client.Ping(context.TODO(), nil)
if err != nil {
log.Fatal(err)
}
fmt.Println("Connected to MongoDB!")
}
根据 MongoDB Go Driver 教程,在命令窗口中执行 “go get github.com/mongodb/mongo-go-driver” 命令时出现以下错误。
can't load package: package github.com/mongodb/mongo-go-driver: no Go files in C:/....
于是我尝试了同样的手册,但问题没有解决。
我在网络上查了很多资料,用win-cmd和git bash检查了dep的版本,发现没有安装dep,所以我执行了dep install。(来源:https://github.com/golang/dep/issues/1353)
完成时的步骤
-
- 设置环境变量GOBIN
-
- 在GOPATH/src下
-
- 执行go get -u github.com/golang/dep/cmd/dep
-
- 执行go get -u github.com/mongodb/mongo-go-driver。
-
- 但是,出现了#找不到项目Gopkg.toml,请使用dep init来初始化清单#的错误,所以执行dep init ./mongo。
-
- 因为Fetching sources…很慢,所以耐心等待,然后在mongo文件夹下会生成
-
- vendor,
-
- Gopkg.lock,
-
- Gopkg.toml。
-
- 进入 ./mongo文件夹
-
- 执行go run mongodb-test.go
#连接到MongoDB!#将显示,连接成功!
下一步计划是创建数据库。