为了账号安全,请及时绑定邮箱和手机立即绑定

Golang 和 MongoDb 远程访问失败

Golang 和 MongoDb 远程访问失败

Go
互换的青春 2021-12-20 09:55:40
我正在尝试使用 mgo 库从 Go 连接到远程 MongoDB 数据库(Mongolab),但出现错误panic: server returned error on SASL authentication step: Authentication failed。这是我的代码package mainimport (    "fmt"    "gopkg.in/mgo.v2"    "gopkg.in/mgo.v2/bson"    "log")type Person struct {    Name  string    Phone string}func main() {    session, err := mgo.Dial("mongodb://<dbusername>:<dbpassword>@ds055855.mlab.com:55855")    if err != nil {        panic(err)    }    defer session.Close()    // Optional. Switch the session to a monotonic behavior.    session.SetMode(mgo.Monotonic, true)    c := session.DB("catalog").C("History")    err = c.Insert(&Person{"Ale", "+55 53 8116 9639"},        &Person{"Cla", "+55 53 8402 8510"})    if err != nil {        log.Fatal(err)    }    result := Person{}    err = c.Find(bson.M{"name": "Ale"}).One(&result)    if err != nil {        log.Fatal(err)    }    fmt.Println("Phone:", result.Phone)}我怎样才能解决这个问题?当然,我写的是我的登录名和密码,而不是我的代码中的星星。
查看完整描述

1 回答

?
慕容3067478

TA贡献1773条经验 获得超3个赞

请检查您是否为您的 Mongolab 数据库实例添加了用户(https://mongolab.com/databases/catalog#users以防您的数据库名称为catalog),因为默认情况下您的用户列表为空(帐户用户/密码!= 数据库用户密码)。

还要添加/<databasename>到连接字符串的末尾 - mongodb://*******:*******@ds045795.mongolab.com:45795/databasename


查看完整回答
反对 回复 2021-12-20
  • 1 回答
  • 0 关注
  • 170 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号