MongoDb dimatikan dengan Kode 100 [ditutup]

91

Saya mengikuti Dokumen MongoDb untuk mengatur MongoDb pertama saya,

Ketika saya memulai MongoDB menggunakan perintah

C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe

Saya mendapatkan kesalahan berikut masukkan deskripsi gambar di sini

Aravind
sumber

Jawaban:

149

MongoDB membutuhkan folder untuk menyimpan database. Buat C:\data\db\direktori:

mkdir C:\data\db

lalu mulai MongoDB:

C:\Program Files\MongoDB\Server\3.4\bin\mongod.exe

Terkadang C:\data\dbfolder sudah ada karena instalasi sebelumnya. Jadi jika karena alasan mongod.exeini tidak berhasil, Anda dapat menghapus semua konten dari C:\data\dbfolder dan menjalankannya mongod.exekembali.

cespon
sumber
Jika Anda melihat detail kesalahannya, ada baris yang mengatakan bahwa direktori C:\data\db\ tidak ditemukan. Gunakan:mkdir C:\data\db
cespon
@cespon Gold tag ..: P
Aravind
Punyaku sebenarnya/mongodb_data/db
Fabricio
Pastikan bahwa data dir dan file dimiliki oleh pengguna dan grup mongodb (di linux).
PeterM
71

Bagi pengguna macOS untuk memperbaiki masalah ini:

Anda harus melalui langkah-langkah berikut:

Buat direktori "db". Di sinilah file data Mongo akan tinggal. Anda dapat membuat direktori di lokasi default dengan menjalankan:

sudo mkdir -p /data/db

Pastikan /data/dbdirektori memiliki izin yang tepat dengan menjalankan:

sudo chown -R `id -un` /data/db

Anda sudah siap sekarang dan Anda dapat menjalankan sudo mongoduntuk memulai server Mongo.

Ini tidak bekerja jika Anda hanya menjalankan mongod

Sumber .

Mohamed
sumber
5
sama di ubuntu 16.04
Manoj Rana
Saya mendapatkan mkdir: /data/db: Read-only file systemsaat menjalankan perintah pertama. Bagaimana saya bisa memperbaikinya? Terima kasih.
LC
@LC Tambahkan sudo ke perintah mkdir
Itay Bachar
15

Untuk mengubah folder db default C:\data\dbdi windows, perintahnya adalah:

--dbpath

Sebagai contoh:

\mongod --dbpath C:\myfolder
Xu Guanghao
sumber
7

Pengguna Mac

Alih-alih menjalankan MongoDB dengan:

sudo mongod

Anda dapat menggunakan mongodsebagai gantinya jika Anda:

  1. Cari folder data mongodb (biasanya ~ / data)
  2. Tambahkan izin untuk membaca + menulis sudo chmod -R ugo+rw data

Jika Anda perlu menggunakan sudosaat menjalankan mongodb ( sudo mongod), itu berarti Anda tidak memiliki izin baca dan tulis di folder data mongodb

Jay C
sumber
1
Terima kasih untuk ini. Saya harus menambahkan izin untuk membaca + menulis ke / data Saya tidak mengerti apa yang saya lakukan salah tetapi saya telah mengatur folder data saya ke ~ / Applications / mongodb / data
vinsentos
3

Harap lakukan langkah-langkah berikut:

  1. Seperti yang teman-teman sebutkan, Anda harus membuat direktori terlebih dahulu untuk menyimpan data database Anda. Folder ini bisa jadi seperti ini:

    C: \ mongo-data

  2. Dari baris perintah, navigasikan ke tempat Anda menginstal mongodb dan tempat mongod.exe berada. Dalam kasus saya, jalur lengkapnya adalah:

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

  3. Dari sini jalankan mongod.exe dan berikan path ke folder yang Anda buat pada langkah pertama menggunakan flag --dbpath sebagai berikut:

    mongod.exe --dbpath "C: \ mongo-data"

Harap Dicatat : Jika Anda menggunakan windows maka perlu menggunakan tanda kutip ganda ("") di atas untuk berjalan dengan benar.

Dengan cara ini Anda akan mendapatkan sesuatu seperti berikut:

2017-06-14T12:45:59.892+0430 I NETWORK  [thread1] waiting for connections on port 27017

Jika Anda menggunakan tanda kutip tunggal ('') di windows, Anda akan mendapatkan:

2017-06-14T01:13:45.965-0700 I CONTROL  [initandlisten] shutting down with code:100

Semoga dapat membantu menyelesaikan masalah.

Reza Baradaran Gazorisangi
sumber
1

Untuk menjalankan demon Mongo DB dengan mongodperintah, Anda harus memiliki direktori database, mungkin Anda perlu menjalankan:

mkdir C:\data\db

Selain itu, MongoDB harus memiliki izin tulis untuk direktori itu atau harus dijalankan dengan izin pengguna super, seperti sudo mongod.

Dmytro Medvid
sumber
1

Saya terus mendapatkan kesalahan berikut ketika saya mencoba memulai mongodb (di mac os).

"shutting down with code:100"

Saya menggunakan perintah berikut:

./mongod --dbpath=~/mongo-data

Perbaikan bagi saya adalah saya tidak memerlukan tanda "=" dan ini menyebabkan kesalahan. Jadi saya lakukan

./mongod --dbpath ~/mongo-data

Hanya ingin membuang ini ke sana karena kesalahan sama sekali tidak menentukan bahwa ini adalah masalahnya. Saya hampir menghapus konten direktori ~ / mongo-data untuk melihat apakah itu membantu. Senang saya ingat bahwa cli args terkadang tidak menggunakan tanda "=".

Cloudish123
sumber
1

pertama Anda harus membuat direktori data tempat MongoDB menyimpan data. Jalur direktori data default MongoDB adalah jalur absolut \ data \ db pada drive tempat Anda memulai MongoDB.

jika anda sudah menginstall di drive C: / maka anda harus membuat direktori data \ db. untuk melakukan perintah jalankan ini di cmd

C:\>mkdir data\db

Untuk memulai MongoDB, jalankan mongod.exe.

"C:\Program Files\MongoDB\Server\4.2\bin\mongod.exe" --dbpath="c:\data\db"

Opsi --dbpath menunjuk ke direktori database Anda. masukkan deskripsi gambar di sini

Hubungkan ke MongoDB.

"C:\Program Files\MongoDB\Server\4.2\bin\mongo.exe"

untuk memeriksa semua pekerjaan baik:

show dbs

masukkan deskripsi gambar di sini

Hrithik sharma
sumber
1

1.Jika menunjukkan error (mematikan dengan kode 100) itu berarti tidak menemukan lokasi file yang diinginkan.

1.a Jika sebelumnya macOS Catalina, buat direktori dengan sudo mkdir -p / data / db dan berikan izin untuk menggunakannya
sudo chown -R id -un/ data / db.

1.b jika macOS Catalina dan seterusnya, buat sudo mkdir -p / System / Volumes / data / db dan berikan izin sudo chown -R id -un/ System / Volume / data / db.

2. Memulai layanan brew mongo db menjalankan mongodb-community

3. Ketik mongod atau mongod --dbpath / System / Volumes / Data / data / db

4. Dan jika mongod menunjukkan error (mematikan dengan kode 48) itu
berarti port tersebut sudah digunakan sehingga Anda dapat melakukan dua hal

4.a Anda dapat mengubah port mongod dengan menentukan
nomor port mongod --dbpath / System / Volumes / Data / data / db —port 27018.

4.b Atau Anda dapat menghentikan proses di port tersebut dengan mencari proses dengan sudo lsof -i: 27017 dan kemudian membunuh dengan perintah
kill -9

5. Ulangi langkah 2 dan 3.

Dishu bagga
sumber
1

Untuk pengguna macOS, atasi masalah di bawah ini:

jika Anda menginstal Komunitas MongoDB di macOS menggunakan .tgz Tarball

(( Dimulai dengan macOS 10.15 Catalina, Apple membatasi akses ke direktori data default MongoDB / data / db. Di macOS 10.15 Catalina, Anda harus menggunakan direktori data yang berbeda, seperti / usr / local / var / mongodb. ))

Anda bisa menyelesaikannya sebagai berikut:

(MacOS Catalina dan seterusnya)

Apple membuat Volume baru di Catalina untuk tujuan keamanan. Jika Anda menggunakan Catalina, Anda perlu membuat folder / data / db di System / Volumes / Data.

Gunakan perintah ini:

sudo mkdir -p /System/Volumes/Data/data/db

Kemudian, gunakan perintah ini untuk memberikan izin:

sudo chown -R `id -un` /System/Volumes/Data/data/db

ini akan menggantikan normal

sudo mkdir -p /data/db

Pastikan direktori / data / db memiliki izin yang tepat dengan menjalankan:

sudo chown -R `id -un` /data/db

setelah Anda selesai dan memulai mongoDB Anda dapat menggunakan yang berikut ini di terminal:

sudo mongod --dbpath /System/Volumes/Data/data/db
ahmedSanad
sumber
0

Di MacOS : -

Jika Anda lupa memberikan path dari database yang dibuat sebelumnya saat menjalankan server mongo, kesalahan di atas akan muncul.

sudo ./mongod --dbpath ../../mongo-data/

Referensi

Catatan: - ./mongod && ../../mongo-data adalah jalur relatif. Jadi Anda dapat menghindarinya dengan konfigurasi di variabel lingkungan

Referensi

Shrawan
sumber
0

Untuk windows saya punya masalah yang sama.

Perbaikannya adalah - saya perlu menjalankan baris perintah sebagai administrator.

Tomas J
sumber
1
Saya menyarankan untuk mengubah jawaban menjadi seperti ini: "Jika Anda mengalami masalah ini di Windows, pastikan Anda menjalankan baris perintah sebagai administrator".
Filnor
0

jika Anda sudah memiliki direktori, periksa izin dir atau coba restart mongo dengan sudo. layanan pembuatan sudo mulai mongodb

rabie jegham
sumber
0

Dalam kasus saya, saya mendapat kesalahan serupa dan itu terjadi karena saya telah menjalankan mongod dengan pengguna root dan itu telah membuat file log yang hanya dapat diakses oleh root. Saya dapat memperbaikinya dengan mengubah kepemilikan dari root ke pengguna tempat Anda biasanya menjalankan mongod. File log berada di / var / lib / mongodb / journal /

Sanchit Garg
sumber
0

Jika Anda menggunakan Virtualbox, periksa VM Anda.

docker-machine ssh

df -h

Lihat dev / sda1 jika Anda tidak memiliki ruang kosong, hal ini mungkin disebabkan oleh banyaknya gambar, atau container. Anda dapat menghapusnya menggunakan "docker rm" dan "docker rmi"

Aaron Tesch
sumber
0

Kode keluar ini juga akan diberikan jika Anda mengubah versi MongoDB dan direktori data tidak kompatibel, misalnya dengan downgrade. Pindahkan direktori lama ke tempat lain, dan buat direktori baru (sesuai instruksi yang diberikan dalam jawaban lain).

Pistos
sumber
0

Aravind.

Itu terjadi pada saya juga karena saya menghentikan MongoDB oleh Task Manager.

Membuat folder C: \ data \ db dan memulai MongoDB di C: \ Program Files \ MongoDB \ Server \ 3.4 \ bin \ mongod.exe berfungsi untuk saya, seperti yang disarankan cespon, tetapi MongoDB tidak menampilkan salah satu Database saya dibuat sebelumnya.

Kemudian, hapus folder C: \ data \ db dan perbaiki penginstalan dengan penginstal MongoDB , saya memulihkan data saya dan memulai secara normal MongoDB.

(Saya sangat baru dengan MongoDB, tetapi ini membantu saya memecahkan masalah ini dan memulihkan data pratinjau).

Amon Bernardo
sumber
0

mengetik mongod dan mendapatkan kesalahan

Kesalahan:

pengecualian di initAndListen: NonExistentPath: Direktori data / data / db tidak ditemukan., menghentikan

dimatikan dengan Kode 100

Kemudian coba dengan (buat folder data dan db dengan semua izin)

mongod --dbpath = / data

gunakan tab baru dan ketik mongo.

> gunakan dbs

Jika Anda masih menghadapi masalah maka Anda dapat memeriksa mac catalina: ( https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x-tarball/ )

untuk windows: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-windows-unattended/

Prakash Singh
sumber