2015-05-07 14 views
36

ho cercato di ristabilire Mongo dal deposito ma non è riuscito:mongorestore non riuscita: nessun server raggiungibili

mongorestore --port 27133 dump 
2015-05-07T09:39:11.760+0300 Failed: no reachable servers 

Anche se posso collegarmi ad esso senza alcun problema:

$ mongo --port 27133 
MongoDB shell version: 3.0.1 
connecting to: 127.0.0.1:27133/test 

In un file di log non c'è nulla speciale:

2015-05-07T09:37:00.350+0300 I NETWORK [initandlisten] connection accepted from 127.0.0.1:44901 #1 (1 connection now open) 
2015-05-07T09:37:13.935+0300 I NETWORK [conn1] end connection 127.0.0.1:44901 (0 connections now open) 
2015-05-07T09:39:08.752+0300 I NETWORK [initandlisten] connection accepted from 127.0.0.1:44906 #2 (1 connection now open) 
2015-05-07T09:39:11.763+0300 I NETWORK [conn2] end connection 127.0.0.1:44906 (0 connections now open) 
2015-05-07T09:39:52.365+0300 I NETWORK [initandlisten] connection accepted from 127.0.0.1:44907 #3 (1 connection now open) 
2015-05-07T09:39:55.064+0300 I NETWORK [conn3] end connection 127.0.0.1:44907 (0 connections now open) 
2015-05-07T09:40:11.272+0300 I NETWORK [initandlisten] connection accepted from 127.0.0.1:44909 #4 (1 connection now open) 
2015-05-07T09:40:14.281+0300 I NETWORK [conn4] end connection 127.0.0.1:44909 (0 connections now open) 

Aggiornamento

Host 127.0.0.1 non ha aiutato

$ mongorestore --host=127.0.0.1 --port=27132 dump 
2015-12-16T18:52:33.270+0300 Failed: no reachable servers 

Anche se posso ancora connettersi utilizzando mongo comando:

$ mongo --host=127.0.0.1 --port=27133 
MongoDB shell version: 3.2.0 
connecting to: 127.0.0.1:27133/test 
> ^C 
bye 

Host 0.0.0.0 non ha aiutato così:

$ mongorestore --host=0.0.0.0 --port=27133 dump 

Ho 3.2 versione di MongoDb:

$ mongorestore --version 
mongorestore version: 3.2.0-rc5 
git version: 6186100ad0500c122a56f0a0e28ce1227ca4fc88 

risposta

19

Il problema si verificava perché --replSet era abilitato nella configurazione. Ma il nodo non era ancora in alcun set di repliche.

Dopo aver rimosso --replSet dalla configurazione, il server mongodb riavviato, mongorestore ha iniziato a funzionare senza alcun parametro --host.

+1

puoi spiegare come disabilitare "--replSet"? –

3

controlla il tuo file di configurazione mongod, se hai abilitato la replica disabilitalo, se abilitato, l'autenticazione basata su chiave disabilita il tutto in pratica disabilita ogni altra cosa e riavvia il servizio mongod e poi prova a eseguire il ripristino di mongo.

E BTW, prova ad associare mongod ipaddress al tuo indirizzo macchina, se è un'istanza mongod locale prova a collegare l'indirizzo ip a 0.0.0.0, nel file mongod.conf sotto bind_ip = "il tuo indirizzo ip", fai fammi sapere che fa o no.

43

prova ad aggiungere ospite param

mongorestore --host=127.0.0.1 --port=27133 dump 
+0

Non funziona per me, non vedo errori, ma non vedo alcuna collezione –

+0

Cosa succede se voglio collegarmi a MongoDb sul mio server? -h localhost funziona, ma -h all'IP del mio server non funziona. Perché? –

17

ho MongoDB installato tramite Homebrew, e stava avendo questo problema. Qui ci sono i sintomi:

Questi fallito:

mongorestore dump

mongorestore dump --host=localhost

L'errore che ho ottenuto: Failed: error connecting to db server: no reachable servers

Questi lavorato (come una soluzione):

mongorestore dump --host=127.0.0.1

mongorestore dump --host=0.0.0.0

Questo ha risolto il problema per me:

brew update && brew upgrade

Questo aggiornamento MongoDB a 3.0.7 ed ora mongorestore dump lavori senza la bandiera ospite.

+1

Aggiornamento a 3.0.7 risolto. –

1

Prima esecuzione mongod

Se si ottiene un'eccezione exception in initAndListen: 29 Data directory /data/db not found., terminating, fare sudo mkdir -p /data/db

Se si ottiene expection exception in initAndListen: 98 Unable to create/open lock file: /data/db/mongod.lock errno:13 Permission denied Is a mongod instance already running?, terminating, questo probabilmente ha il problema di autorizzazione. Se questo è il tuo locale, puoi eseguire sudo chmod 7777 /data/db per risolvere il problema.

Ora, mongod dovrebbe funzionare. Quindi, eseguire mongorestore dump dove si trova il file di dump.

È necessario ripristinare correttamente il file di dettagli.

10

Si esegue mongo nel set di repliche, ad esempio mongod --replSet rs0?

Se sì, si prega di ricordarsi di eseguire nelle Mongo shell il comando: rs.initiate()

quindi è possibile utilizzare cmd mongorestore per ripristinare il db.

1

Ho avuto anche difficoltà con quella domanda.

mongorestore --host f8cab83e7294 --port 27601 gene_backup_final/gene_backup/s2/ --verbose 

2016-12-05T13:48:15.333-0700 Failed: error connecting to db server: no reachable servers 

Impossibile inizializzare il set di repliche. Ecco perché non c'era un server raggiungibile

Dopo aver avviato la RS, il ripristino funzionava.

mongo localhost:27501 
rs.initiate() 
0

Ho lo stesso problema. Ho provato ad avviare mongod prima di ripristinare la mia discarica, e funziona per me. Spero che questo aiuta questa situazione

1

Nel mio caso (con Mongo 3.2.9), il server è stato configurato per l'ascolto sulla IPv4 localhost indirizzo (127.0.0.1), ma mongorestore provato solo l'indirizzo IPv6 localhost (::1).

Utilizzo di -h 127.0.0.1 funzionante. Tuttavia, questo non dovrebbe essere necessario, IMHO, ed è un bug in mongorestore. Dovrebbe utilizzare la stessa logica di connessione del client della riga di comando mongo, che funzionava.

Nota: set di repliche non abilitati.

Problemi correlati