Baru di MongoDB Tidak dapat menjalankan perintah mongo

94

Saya mencoba menjalankan MongoDB:

   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

Saya melihat http://www.mongodb.org/display/DOCS/Quickstart+Windows dan mengikuti petunjuknya. Adakah yang bisa memberi tahu saya apa masalah dengan menjalankan MongoDB (Saya menggunakan Windows 7)?

sophie
sumber
Tidak disukai, karena membaca log tidak dapat diminta terlalu banyak, bahkan dari seseorang yang baru. Garis sebelum penutupan dimulai dengan jelas menyatakan apa yang terjadi.
Markus W Mahlberg

Jawaban:

76

Saya pikir keluaran log Anda menyatakan dengan jelas;

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

Anda cukup membuat direktori ini atau lebih baik mendefinisikannya sebagai nilai konfigurasi dalam file konfigurasi Anda kemudian menggunakannya sebagaimongod -f C:\path\to\your\mongodb.conf .

kirpit
sumber
6
jangan khawatir. singkirkan saja windowz itu, yang akan membuat Anda lebih terbiasa dengan pengembangan perangkat lunak ..
kirpit
14
Secara default, MongoDB mencari di folder: c: \ data \ db, jadi Anda juga bisa membuat struktur direktori itu, dan proses database MongoDB tidak akan membentak Anda.
Miguel Sevilla
1
Saya menempatkan data \ db di banyak tempat serta menggunakan opsi --dbpath tidak berhasil. Satu-satunya hal yang berhasil adalah membuat folder c: \ data \ db seperti yang disarankan Miguel Sevilla.
Brybott
166

Setelah menginstal MongoDB Anda harus membuat folder data secara manual.

Secara default MongoDB akan menyimpan data di / data / db, 
tetapi tidak akan secara otomatis membuat direktori itu. Untuk membuatnya, lakukan:

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

Anda juga dapat memberi tahu MongoDB untuk menggunakan direktori data yang berbeda,
dengan opsi --dbpath.

Untuk informasi lebih rinci, buka halaman wiki MongoDB.

Fatih Acet
sumber
3
Ini harus menjadi jawabannya - berhasil dan lebih membantu daripada "Baca dokumentasi".
Dan
Juga catatan, saya baru tahu ini hari ini, jika Anda memulai mongo dengan service mongodb startitu secara otomatis membaca /etc/mongod.conffile dan Anda tidak perlu menentukan variabel --dbpath atau --config Anda setiap kali Anda mulai! Ini pasti berfungsi untuk pemasangan 10gen tetapi saya tidak yakin tentang yang lain karena saya belum mencobanya.
tak terbatas08
27

Tentukan jalur database secara eksplisit seperti itu, dan lihat apakah itu menyelesaikan masalah.

mongod --dbpath data/db
Socratees Samipillai
sumber
Jika direktori tidak ada itu akan gagal di bawah mongo versi 4.2
Tono Nam
21
mongod --dbpath "c://data/db"

jalankan kode di atas, ini akan memulai server.

pemain sandi
sumber
6

Untuk Windows 7

Anda dapat menentukan jalur alternatif \data\dbdengan pengaturan dbpath untuk mongod.exe ,

seperti pada contoh berikut:

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

atau

Anda dapat mengatur dbpath melalui File Konfigurasi .

Zeeshan Akhter
sumber
4

Periksa apakah jalur ke file data database ada;):

Sun 06 Nov 18:48:37 [initandlisten] pengecualian di initAndListen: 10296 dbpath (/ data / db) tidak ada , menghentikan

Andrew Orsich
sumber
2

Ini berfungsi untuk saya (jika berlaku, Anda juga melihat file kunci):

first>youridhere@ubuntu:/var/lib/mongodb$ sudo service mongodb start 
then >youridhere@ubuntu:/var/lib/mongodb$ sudo rm mongod.lock*
dcparham.dll
sumber
2

Setelah beberapa kali mencoba, ini berfungsi untuk saya di Windows 7 env .:

Awalnya direktori tempat Anda menyalin semua sumber MongDB memiliki tampilan seperti ini:

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

Yang Anda butuhkan hanyalah menambahkan direktori data dan direktori db bersarang (data / db) Tampilan akhir akan terlihat seperti ini:

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

Dari cukup ketik di direktori tempat sumber MongoDB dan data / db dirs ada perintah ini:

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

Juga periksa apakah Anda telah menginstal Mongo sebagai layanan windows dan apakah itu berjalan. Itu juga penting. Mungkin ada konflik port karena itu.

Siva Karthikeyan
sumber
1

Buat direktori data / db di partisi utama (windows) Anda:

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

lalu pergi ke mongo_directory / bin Anda dan jalankan mongod.exe:

C:\> cd \my_mongo_dir\bin

C:\my_mongo_dir\bin> mongod

JANGAN TUTUP JENDELA INI

Sekarang di jendela command prompt yang berbeda jalankan Mongo:

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

(INGAT ANDA HARUS MENJAGA JENDELA LAIN BUKA)

Ini memecahkan masalah saya.

Shobhit Sharma
sumber
>> mongod --install --dbpath c: \ data \ db --logpath c: \ data \ log >> net start "Mongo DB" // catatan: net start mungkin memerlukan izin admin
damphat
1

buat struktur folder data / db di direktori kerja dan kemudian mulai mongodb menggunakan "mongod --dbpath data / db" berfungsi dengan baik

Raghav
sumber
1

Anda harus membuat startup.batjika Anda menggunakan Windows, jauh lebih nyaman:

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

Dan hanya dbclick startup.bat dan mongodb akan berjalan menggunakan C:\mongodb\datafolder datanya.

laike9m
sumber
0

Anda hanya perlu membuat direktori di C :. sebagai C: \ data \ db \

Sekarang mulai saja 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)

Ini kemudian akan berjalan sebagai layanan di latar belakang.

Girish Gupta
sumber
0

Jika Anda menggunakan Windows 7 / 7+.

Ini sesuatu yang bisa Anda coba.

Periksa apakah penginstalan sudah benar di CONTROL PANEL komputer Anda.

Sekarang buka direktori dan tempat Anda menginstal MongoDB. Idealnya, itu akan masuk

C: \ Program Files \ MongoDB \ Server \ 3.6 \ bin

Kemudian di command prompt atau di terminal IDE. Arahkan ke jalur di atas (Idealnya file simpan Anda) dan ketik

mongod --dbpath

Seharusnya bekerja dengan baik!

Rakesh Deshpande
sumber
0

Pendekatan paling sederhana yang diberikan oleh file bantuan README mongo

MENJALANKAN

Untuk opsi baris perintah, panggil:

$ ./mongod --help

Untuk menjalankan database server tunggal:

$ sudo mkdir -p /data/db
$ ./mongod
$
$ # The mongo javascript shell connects to localhost and test database by default:
$ ./mongo
> help

Jika Anda bekerja dengan windows, buka direktori tempat Anda memiliki mongo.exe

gunakan perintah berikut, (Saya membagikan milik saya)

C:\Program Files\MongoDB\Server\3.6\bin>mkdir \data

C:\Program Files\MongoDB\Server\3.6\bin>mkdir \data\db

C:\Program Files\MongoDB\Server\3.6\bin>mongod ## this will start your mongoDB server

Sekarang Anda perlu menjalankan prompt CMD lain dan pergi ke direktori tempat Anda memiliki mongo dan jalankan saja

C:\Program Files\MongoDB\Server\3.6\bin>mongo ## this will start your mongoDB client

Semoga membantu :)

Jika tidak berhasil, jalankan CMD sebagai administrator

Ash Upadhyay
sumber