服务器在 SASL 身份验证步骤上返回错误:身份验证失败

新手上路,请多包涵

以下是我从 GoLang 连接 MongoDB 的拨号。但它返回了一个恐慌“ 服务器在 SASL 身份验证步骤上返回错误:身份验证失败。 ”。我的用户名、密码、hostAddrs 和 dbName 是正确的。我在这里错过了什么?

 dbName: = os.Getenv("ENV_DBNAME")
userName: = os.Getenv("ENV_DBUSER")
password: = os.Getenv("ENV_DBPASS")
dbHost: = os.Getenv("ENV_DBHOST")
mongoDialInfo: = & mgo.DialInfo {
 Addrs: [] string {
  dbHost
 },
 Database: dbName,
 Username: userName,
 Password: password,
 Timeout: 60 * time.Second,
}
sess, err: = mgo.DialWithInfo(mongoDialInfo)
if (err != nil) {
 panic(err)

}

原文由 Arjun Ajith 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 570
2 个回答

我遇到了类似的错误并添加了 --authenticationDatabase 参数,它在我们连接到远程 MongoDB 时有效

在您的代码中使用类似的以下格式:

 $mongorestore --host databasehost:98761 --username restoreuser
--password restorepwd --authenticationDatabase admin --db targetdb ./path/to/dump/

原文由 Anantha 发布,翻译遵循 CC BY-SA 3.0 许可协议

我们经常将 mongoexport 命令中的参数与“登录”用户混淆。该命令需要“数据库用户名”而不是登录用户名。这是输入错误用户名的一种可能性。可以在数据库的“用户”选项卡中找到“数据库用户名”

原文由 Geomy George 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题