2016-05-12 23 views
2

Ich habe MongoDB für Sitecore mit einem Replikat festgelegt. Ich habe Keyfile Access Control eingerichtet und einen Benutzer hinzugefügt. Aber ich habe Probleme beim Erstellen von Verbindungszeichenfolgen.Wie formatiert man die Verbindungszeichenfolge für ein MongoDB-Replikat in Sitecore?

Lets meine Replik Setnamen rsHelloWorld mit mehreren mongod Instanzen ist annehmen: localhost:21017,localhost:21018,localhost:21019,localhost:21020,localhost:21021(arbitor)

username: mongo_admin 
password: [email protected] 

Der Standardverbindungszeichenfolge in Sitecore ist:

<add name="analytics" connectionString="mongodb://localhost/analytics" /> 

Wie die Verbindungszeichenfolge für meine MongoDB Datenbank angeben mit einem Replikat und Authentifizierung?

Antwort

4

Sitecore xDB verwendet den Standard MongoDB connection string format.

Im vorgesehenen Beispiel wird die Verbindungszeichenfolge sein:

mongodb://mongo_admin:test%[email protected]:21017,localhost:21018,localhost:21019,localhost:21020,localhost:21021/?replicaSet=rsHelloWorld 

Bitte beachte, dass ich das @ Symbol in Ihrem Passwort mit %40 ersetzt habe. Dies liegt daran, dass @ in einer Verbindungszeichenfolge das Trennzeichen zwischen Anmeldeinformationen und Hostnamen ist. See more here.

Denken Sie auch daran, dass Sie nicht haben, um alle Ihre Server in der Verbindungszeichenfolge anzugeben. Sie müssen mindestens eine angeben, und nach dem Herstellen der Verbindung erhält xDB vollständige Informationen über die Replikatgruppe einschließlich der Adressen aller datentragenden Knoten. Dennoch empfiehlt es sich, mehrere Server einzubeziehen, um sicherzustellen, dass die Anwendung immer noch einen Server findet, mit dem eine Verbindung hergestellt werden kann. In Ihrem Fall macht die Einbeziehung des Arbiters keinen Sinn, da xDB (oder ein anderer MongoDB-Client) niemals mit ihm kommunizieren muss.