sql >> Database teknologi >  >> NoSQL >> MongoDB

mongodb insert mislykkes på grund af socket-undtagelse

Det ser ud til, at du har et forbindelsesproblem med mongo-serveren. Nedenstående måder kan hjælpe dig med at diagnosticere mongo-serverne bedre:

  1. Prøv at få flere oplysninger fra logfiler:

    $less /var/log/mongo/mongod.log

    eller tilpassede logfiler defineret i mongod.conf

  2. Prøv at bruge mongostat til at overvåge servertilstanden:

    $ mongostat -u ADMIN_USER -p ADMIN_PASS

  3. Prøv at bruge mongo cli til at kontrollere serverens kørestatus:

    $ mongo admin -u ADMIN_USER -p ADMIN_PASS
    $ db.serverStatus()
    

    Flere nyttige kommandoer er på:http://docs.mongodb.org/manual/reference/ metode/

Nogle gange kan det støde på Linux-systemkonfigurationer. Prøv at tune Linux for flere forbindelser og begrænsninger, og det kan hjælpe. Kør for at kontrollere de aktuelle Linux-grænser:

$ ulimit -a

Nedenstående forslag kan være nyttige:

Hver forbindelse ses af Linux som en åben fil. Standard maksimalt antal åbne filer er 1024. For at øge denne grænse:

  1. ændre /etc/security/limits.conf :

    root    soft    nofile     500000
    root    hard    nofile     512000
    root    soft    nproc      500000
    root    hard    nproc      512000
    
  2. ændre /etc/sysctl.conf

    fs.file-max=360000
    net.ipv4.ip_local_port_range=1024 65000
    


  1. Mongo DB:Find indlejret matrixværdi

  2. geoNear returnerer forkert afstand

  3. MongoDB Aggregation fejl:Pipeline stage specifikation objekt skal indeholde nøjagtigt ét felt

  4. Fjederdata ved hjælp af Neo4j og MongoDB