使用 Golang Mgo 连接 MongoDB Atlas:解决“副本集无法访问服务器”问题
问题:
使用 Golang 连接到 MongoDB Atlas 上的副本集时mgo 驱动程序,尽管与其他语言和常规 Mongo 客户端成功连接,但仍遇到“无法访问服务器”的错误消息。
答案:
修改版本下面的 mgo 代码片段使用提供的示例成功建立了与 MongoDB Atlas 的连接参数:
import ( "gopkg.in/mgo.v2" "crypto/tls" "net" ) tlsConfig := &tls.Config{} dialInfo := &mgo.DialInfo{ Addrs: []string{"prefix1.mongodb.net:27017", "prefix2.mongodb.net:27017", "prefix3.mongodb.net:27017"}, Database: "authDatabaseName", Username: "user", Password: "pass", } dialInfo.DialServer = func(addr *mgo.ServerAddr) (net.Conn, error) { conn, err := tls.Dial("tcp", addr.String(), tlsConfig) return conn, err } session, err := mgo.DialWithInfo(dialInfo)
注意事项:
以上是为什么我的 Go mgo 驱动程序无法连接 MongoDB Atlas 副本集,并出现'No Reachable Server”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!