


Warum schlägt meine Golang-mgo-Verbindung zu MongoDB Atlas ständig mit der Fehlermeldung „Kein erreichbarer Server' fehl?
Herstellen einer Verbindung zu MongoDB Atlas mithilfe von Golang MGO: Permanentes „Kein erreichbarer Server“ für den Replikatsatz
Diese Fehlermeldung tritt häufig auf, wenn versucht wird, eine Verbindung herzustellen zu einem MongoDB Atlas-Replikatsatz mithilfe des MGO-Treibers von Golang. Um dieses Problem zu beheben, ziehen Sie die folgenden Schritte in Betracht:
Verwenden Sie das unten bereitgestellte MGO-Code-Snippet:
import ( "gopkg.in/mgo.v2" "crypto/tls" "net" ) // Configure TLS settings tlsConfig := &tls.Config{} // Initialize the DialInfo object dialInfo := &mgo.DialInfo{ Addrs: []string{"prefix1.mongodb.net:27017", "prefix2.mongodb.net:27017", "prefix3.mongodb.net:27017"}, Database: "authDatabaseName", Username: "user", Password: "pass", } // Override the default DialServer method dialInfo.DialServer = func(addr *mgo.ServerAddr) (net.Conn, error) { conn, err := tls.Dial("tcp", addr.String(), tlsConfig) return conn, err } // Establish the connection using DialWithInfo session, err := mgo.DialWithInfo(dialInfo)
Beachten Sie, dass die Angabe eines einzelnen Replikatsatzmitglieds als Startwert gleichermaßen gültig ist Option:
Addrs: []string{"prefix2.mongodb.net:27017"}
Weitere Einblicke finden Sie im Folgenden Ressourcen:
- [tls.Dial()](https://golang.org/pkg/crypto/tls/#Dial)
- [DialInfo](https:// godoc.org/gopkg.in/mgo.v 2#DialInfo)
- [DialWithInfo](https://godoc.org/gopkg.in/mgo.v2#DialWithInfo)
Update:
Alternativ: Die Methode mgo.ParseURL() kann zur Interpretation der MongoDB Atlas-URI-Zeichenfolge verwendet werden. Derzeit fehlt jedoch die Unterstützung für SSL.
Um dieses Problem zu umgehen, können Sie den Parameter ssl=true vor dem Parsen entfernen:
// URI without ssl=true var mongoURI = "mongodb://username:[email protected],prefix2.mongodb.net,prefix3.mongodb.net/dbName?replicaSet=replName&authSource=admin" dialInfo, err := mgo.ParseURL(mongoURI) // Subsequent code remains similar to the previous example.
Das obige ist der detaillierte Inhalt vonWarum schlägt meine Golang-mgo-Verbindung zu MongoDB Atlas ständig mit der Fehlermeldung „Kein erreichbarer Server' fehl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

GO Language Pack Import: Was ist der Unterschied zwischen Unterstrich und ohne Unterstrich?

Wie kann ich kurzfristige Informationsübertragung zwischen Seiten im BeEGO-Framework implementieren?

Wie konvertieren Sie die Liste der MySQL -Abfrageergebnisse in eine benutzerdefinierte Struktur -Slice in Go -Sprache?

Wie kann ich benutzerdefinierte Typ -Einschränkungen für Generika in Go definieren?

Wie schreibe ich Scheinobjekte und Stubs zum Testen in Go?

Wie schreibe ich Dateien in Go Language bequem?

Wie kann ich Tracing -Tools verwenden, um den Ausführungsfluss meiner GO -Anwendungen zu verstehen?
