2011-11-06 14 views
80

stavo cercando di eseguire MongoDB:Nuovo per MongoDB Non è possibile eseguire il comando mongo

E:\mongo\bin>mongod 
    mongod --help for help and startup options 
    Sun Nov 06 18:48:37 
    Sun Nov 06 18:48:37 warning: 32-bit servers don't have journaling enabled by default. Please use --journal if you want durability. 
    Sun Nov 06 18:48:37 
    Sun Nov 06 18:48:37 [initandlisten] MongoDB starting : pid=7108 port=27017 dbpath=/data/db 32-bit host=pykhmer-PC 
    Sun Nov 06 18:48:37 [initandlisten] 
    Sun Nov 06 18:48:37 [initandlisten] ** NOTE: when using MongoDB 32 bit, you are limited to about 2 gigabytes of data 
    Sun Nov 06 18:48:37 [initandlisten] **  see http://blog.mongodb.org/post/137788967/32-bit-limitations 
    Sun Nov 06 18:48:37 [initandlisten] **  with --journal, the limit is lower 
    Sun Nov 06 18:48:37 [initandlisten] 
    Sun Nov 06 18:48:37 [initandlisten] db version v2.0.1, pdfile version 4.5 
    Sun Nov 06 18:48:37 [initandlisten] git version: 3a5cf0e2134a830d38d2d1aae7e88cac31bdd684 
    Sun Nov 06 18:48:37 [initandlisten] build info: windows (5, 1, 2600, 2, 'Service Pack 3') BOOST_LIB_VERSION=1_42 
    Sun Nov 06 18:48:37 [initandlisten] options: {} 
    Sun Nov 06 18:48:37 [initandlisten] exception in initAndListen: 10296 dbpath (/data/db) does not exist, terminating 
    Sun Nov 06 18:48:37 dbexit: 
    Sun Nov 06 18:48:37 [initandlisten] shutdown: going to close listening sockets... 
    Sun Nov 06 18:48:37 [initandlisten] shutdown: going to flush diaglog... 
    Sun Nov 06 18:48:37 [initandlisten] shutdown: going to close sockets... 
    Sun Nov 06 18:48:37 [initandlisten] shutdown: waiting for fs preallocator... 
    Sun Nov 06 18:48:37 [initandlisten] shutdown: closing all files... 
    Sun Nov 06 18:48:37 [initandlisten] closeAllFiles() finished 
    Sun Nov 06 18:48:37 dbexit: really exiting now 

E:\mongo\bin>mongo 
MongoDB shell version: 2.0.1 
connecting to: test 
Sun Nov 06 18:48:42 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84 
exception: connect failed 

E:\mongo>ls 
GNU-AGPL-3.0 README THIRD-PARTY-NOTICES bin data 

stavo guardando http://www.mongodb.org/display/DOCS/Quickstart+Windows e seguendo le istruzioni. Qualcuno potrebbe dirmi qual è il problema con l'esecuzione di MongoDB (sto usando Windows 7)?

+0

Downvoted, in quanto la lettura dei registri non può essere richiesta troppo, anche da qualcuno che è nuovo. La linea appena prima dello spegnimento inizia a indicare chiaramente cosa sta succedendo. –

risposta

62

Penso che l'output del registro lo indichi chiaramente;

exception in initAndListen: 10296 dbpath (/data/db) does not exist, terminating 

si può semplicemente creare questa directory o meglio define it come un valore di configurazione all'interno del file di configurazione quindi utilizzarlo come mongod -f C:\path\to\your\mongodb.conf.

+6

nessun problema. liberati di questa cosa di windowz, che ti renderà più familiare lo sviluppo del software .. – kirpit

+10

Per impostazione predefinita, MongoDB guarda nella cartella: c: \ data \ db, quindi potresti anche solo creare quella struttura di directory e il database MongoDB processo non ti urlerà contro. –

+1

Ho inserito data \ db in molti posti e ho utilizzato l'opzione --dbpath senza alcun risultato. L'unica cosa che funzionava era la creazione della cartella c: \ data \ db come suggeriva Miguel Sevilla. – brybott

4

Verificare che esista percorso dei file di dati del database;):

Sun 6 novembre 18:48:37 [initandlisten] eccezione in initAndListen: 10296 DBPATH (/ dati/db) non lo fa esiste, che termina

22

Specificare il percorso del database in modo esplicito, e verificare se questo risolve il problema.

mongod --dbpath data/db 
+1

ha funzionato Socratees su come aggiungere quel percorso come predefinito? – Notepad

155

Dopo aver installato il MongoDB, è necessario creare manualmente una cartella di dati.

 
By default MongoDB will store data in /data/db, 
but it won't automatically create that directory. To create it, do: 

$ sudo mkdir -p /data/db/ 
$ sudo chown `id -u` /data/db 

You can also tell MongoDB to use a different data directory, 
with the --dbpath option. 

For more detailed information go to MongoDB wiki page.

+3

+1 che ha risolto il mio problema ... –

+3

Questa dovrebbe essere la risposta - ha funzionato ed è stato più utile quindi "Leggi la documentazione". – Dan

+0

Inoltre, l'ho appena scoperto, se avvii mongo con 'service mongodb start' legge automaticamente il file'/etc/mongod.conf' e non devi specificare il tuo --dbpath o - variabili di configurazione ogni volta che si avvia! Questo sicuramente funziona per l'installazione 10gen ma non sono sicuro degli altri perché non li ho provati. – boundless08

15
mongod --dbpath "c://data/db" 

eseguire il codice di cui sopra, questo sarà avviare il server.

1

Creare la directory dei dati/db nei tuoi principali (finestre) partizione:

C:\> mkdir \data 
C:\> mkdir \data\db 

e poi andare al tuo mongo_directory/bin ed eseguire mongod.exe:

C:\> cd \my_mongo_dir\bin 

C:\my_mongo_dir\bin> mongod 

non chiudere QUESTA fINESTRA

Ora in una diversa finestra del prompt dei comandi eseguire Mongo:

C:\> cd \my_mongo_dir\bin 
C:\my_mongo_dir\bin> mongo 

(ricordati che hai per mantenere quel ALTRE finestra aperta)

Questo ha risolto il problema per me.

+0

>> mongod --install --dbpath c: \ data \ db --logpath c: \ data \ log >> net start "Mongo DB" // nota: net start potrebbe richiedere l'autorizzazione di amministratore – damphat

1

Controllare anche se è stato installato Mongo come servizio Windows e se è in esecuzione. Questo è anche importante. A causa di ciò potrebbe esserci un conflitto.

2

questo ha funzionato per me (se si applica anche che si vede il file di blocco):

first>[email protected]:/var/lib/mongodb$ sudo service mongodb start 
then >[email protected]:/var/lib/mongodb$ sudo rm mongod.lock* 
1

creare dati di struttura delle cartelle/db nella directory di lavoro e quindi di mettere in MongoDB usando "mongod --dbpath dati/db" funziona bene

2

Dopo vari tentativi questo funziona per me su Windows 7 ENV .:

Inizialmente directory in cui è stato copiato tutte le fonti MongDB ha tale visione:

bsondump.exe 
mongo.exe 
mongod.exe 
mongod.pdb 
mongodump.exe 
mongoexport.exe 
mongofiles.exe 
mongoimport.exe 
mongooplog.exe 
mongoperf.exe 
mongorestore.exe 
mongos.exe 
mongos.pdb 
mongostat.exe 
mongotop.exe 

Tutto ciò che serve è aggiungere dati directory e db directory annidati (dati/db) vista finale dovrebbe essere simile a questo:

data 
bsondump.exe 
mongo.exe 
mongod.exe 
mongod.pdb 
mongodump.exe 
mongoexport.exe 
mongofiles.exe 
mongoimport.exe 
mongooplog.exe 
mongoperf.exe 
mongorestore.exe 
mongos.exe 
mongos.pdb 
mongostat.exe 
mongotop.exe 

che semplicemente digitare nella directory in cui MongoDB fonti e dati/dirs db esistono questo comando:

C:\my_mongo_dir\bin>mongod --dbpath .\data\db 
1

è necessario creare un 0.123.se si utilizza Windows, molto più conveniente:

C:\mongodb\mongodb-win32-x86_64-eiditon\bin\mongod.exe --dbpath C:\mongodb\data 

E proprio startup.bat doppio click e MongoDB verrà eseguito utilizzando C:\mongodb\data come la sua cartella dei dati.

5

Per Windows 7

È possibile specificare un percorso alternativo per \data\db con l'impostazione DBPATH per mongod.exe,

come nel seguente esempio:

c:\mongodb\bin\mongod.exe --dbpath c:\mongodb\data\db 

o

è possibile imposta dbpath attraverso il file di configurazione.

0

Hai solo bisogno di creare una directory in C :. come C: \ data \ db \

Ora basta iniziare MongoDB:

C:\Users\gi.gupta>"c:\Program Files\MongoDB\Server\3.2\bin\mongod.exe" 
2016-05-03T10:49:30.412+0530 I CONTROL [main] Hotfix KB2731284 or later update is not installed, will zero-out data files 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten] MongoDB starting : pid=7904 port=27017 dbpath=C:\data\db\ 64-bit host=GLTPM-W036 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten] targetMinOS: Windows 7/Windows Server 2008 R2 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten] db version v3.2.6 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten] git version: 05552b562c7a0b3143a729aaa0838e558dc49b25 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1p-fips 9 Jul 2015 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten] allocator: tcmalloc 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten] modules: none 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten] build environment: 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten]  distmod: 2008plus-ssl 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten]  distarch: x86_64 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten]  target_arch: x86_64 
2016-05-03T10:49:30.414+0530 I CONTROL [initandlisten] options: {} 
2016-05-03T10:49:30.427+0530 I -  [initandlisten] Detected data files in C:\data\db\ created by the 'wiredTiger' storage engine, so setting the active storage engine to 
2016-05-03T10:49:30.429+0530 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=1G,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(f 
chive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0), 
2016-05-03T10:49:30.998+0530 I NETWORK [HostnameCanonicalizationWorker] Starting hostname canonicalization worker 
2016-05-03T10:49:30.998+0530 I FTDC  [initandlisten] Initializing full-time diagnostic data capture with directory 'C:/data/db/diagnostic.data' 
2016-05-03T10:49:31.000+0530 I NETWORK [initandlisten] waiting for connections on port 27017 
2016-05-03T10:49:40.766+0530 I NETWORK [initandlisten] connection accepted from 127.0.0.1:57504 #1 (1 connection now open) 

Sarà quindi eseguito come servizio in background.

Problemi correlati