sql >> Database >  >> NoSQL >> MongoDB

C# MongoDb Verbinding maken met replicaset probleem

Op dit moment ben ik MongoDB aan het leren en speel ik rond replicasetverbindingen. Ik draag graag bij met 2 manieren die ik heb gebruikt om verbinding te maken met de database die ik nuttig vond, als het niemand helpt, zal ik in de toekomst tenminste een plek hebben om naar te verwijzen (ik weet zeker dat ik ga om het ooit nodig te hebben)eerst:

var connString = "mongodb://localhost:27029,localhost:27027,localhost:27028?connect=replicaSet";
var client = new MongoClient(connString);
var db = client.GetDatabase("test");

tweede:

var settings = new MongoClientSettings
{
   Servers = new[]
   {
      new MongoServerAddress("localhost", 27027),
      new MongoServerAddress("localhost", 27028),
      new MongoServerAddress("localhost", 27029)
   },
   ConnectionMode = ConnectionMode.Automatic,
   ReplicaSetName = "m101",
   WriteConcern = new WriteConcern(WriteConcern.WValue.Parse("3"),wTimeout:TimeSpan.Parse("10"))
};
var client = new MongoClient(settings);

Met de eerste kan ik verbinding maken met de database via de servers die zijn opgegeven in de lijst met servers. Hierdoor kan de driver automatisch verbinding maken met de nieuwe principal-node in de replicaset in het geval van een storing met de principal. Met de tweede stuur ik de lijst met servers in de replicaset, het verbindingstype. De naam van de replicaset en de configuratie van het schrijfprobleem. Met deze instellingen dwing ik de bestuurder om te wachten op een bevestiging van het schrijven van de 3 servers in de replicaset (WValue:3) en om maximaal 10 seconden te wachten op de bevestiging van het schrijven.



  1. Kan kafka verbinden - Mongo-bron wordt uitgevoerd als cluster (max.tasks> 1)

  2. uitzondering:BSONObj-grootte:-286331154 (0xEEEEEEEEE) is ongeldig. Grootte moet tussen 0 en 16793600 (16 MB) zijn

  3. Waarde retourneren van asynchrone functie node.js

  4. MongoCommandException:Opdracht mislukt met fout 8000 (AtlasError):'geen SNI-naam verzonden, zorg ervoor dat u een MongoDB 3.4+ driver/shell gebruikt.'