Gagal memulai mongod.service: Unit mongod.service tidak ditemukan

42

Untuk alasan apa pun, setiap kali saya mencoba memulai MongoDB sebagai layanan (sudo service mongod start) saya mendapatkan kesalahan berikut:

Gagal memulai mongod.service: Unit mongod.service tidak ditemukan. Saya mengikuti Langkah Instalasi menyebutkan tautan berikut instalasi mongo db gagal

system> sudo systemctl start mongodb
Failed to start mongodb.service: Unknown unit: mongodb.service

Dan ketika saya mencoba sudo mongod:

MongoDB shell version: 3.2.13 connecting to: - 
2017-06-03T16:19:28.513+0530 W NETWORK [thread1] 
Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: errno:111 Connection refused 
2017-06-03T16:19:28.514+0530 E QUERY [thread1] 
Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed : connect@src/mongo/shell/mongo.js:229:14 @(connect):1:6 exception: connect failed

Dan ketika saya mencoba mongod --repair:

2017-06-03T16:32:35.514+0530 I CONTROL [initandlisten] 
MongoDB starting : pid=17423 port=27017 dbpath=/data/db 64-bit host=sid-Ideapad-Z570 2017-06-03T16:32:35.514+0530 I 
CONTROL [initandlisten] db version v3.2.13 [listen] target_arch: x86_64 2017-06-03T16:32:35.514+0530 I 
CONTROL [initandlisten] options: {} 2017-06-03T16:32:35.540+0530 I STORAGE [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating
Siddharth Jain
sumber
Apa output dari perintah ini: ls /etc/systemd/system | grep mongoOutput?
Ali Razmdideh
out put is mongodb.service
Siddharth Jain
Apakah Anda memiliki file ini? /usr/bin/mongod; jika Anda memiliki apa yang dihasilkan dari perintah inisudo mongod
Ali Razmdideh
MongoDB shell version: 3.2.13 connecting to: - 2017-06-03T16:19:28.513+0530 W NETWORK [thread1] Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: errno:111 Connection refused 2017-06-03T16:19:28.514+0530 E QUERY [thread1] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed : connect@src/mongo/shell/mongo.js:229:14 @(connect):1:6 exception: connect failed
Siddharth Jain
1
coba mongod --repairitu sudo mongod; mungkin membantu
Ali Razmdideh

Jawaban:

65

Saya menginstal ulang mongod-org, karena data saya akan tetap aman.

Masalahnya adalah bahwa sistem saya tidak dapat menemukan layanan mongod.ser ketika saya berlari sudo service mongod status.

Menjalankan ini memperbaikinya dan memulihkan layanan:

sudo systemctl enable mongod

Lalu yang harus saya lakukan adalah menyalin konfigurasi saya yang benar ke /etc/mongod.confdan jalankan

sudo service mongod restart
Shubham Chaudhary
sumber
9
Saya mencoba untuk mengaktifkan mongod, tetapi itu menunjukkanFailed to execute operation: No such file or directory
Mostafiz Rahman
Hanya mencatat bahwa ini berfungsi ketika Anda telah menginstal edisi komunitas mongodb dari repo mongodb
yeeking
Coba:sudo service mongodb status
Xonshiz
16

Ini berhasil bagi saya.

  1. Copot mongo Anda sepenuhnya dari sistem Anda:

    sudo service mongod stop 
    sudo apt-get purge mongodb-org* 
    sudo rm -r /var/log/mongodb 
    sudo rm -r /var/lib/mongodb
    
  2. Sekarang instal ulang mongodb menggunakan perintah berikut:

    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
    echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
    sudo apt-get update
    sudo apt-get install -y mongodb-org
    

    Untuk menginstal rilis tertentu, Anda harus menentukan setiap paket komponen secara individual bersama dengan nomor versi, seperti dalam contoh berikut:

    sudo apt-get install -y mongodb-org=3.6.0 mongodb-org-server=3.6.0 mongodb-org-shell=3.6.0 mongodb-org-mongos=3.6.0 mongodb-org-tools=3.6.0
    
  3. Sekarang Anda dapat melihat mongod bekerja tetapi masalah yang sama masih mengganggu Anda. Masalahnya adalah bahwa sistem Anda tidak dapat menemukan layanan mongod.ser ketika Anda menjalankan sudo service mongod status.

    Menjalankan ini memperbaikinya dan memulihkan layanan:

    sudo systemctl enable mongod
    
  4. Sekarang Anda siap untuk menggunakan mongo.

    sudo service mongod restart
    
Akash Jain
sumber
Saya telah melakukan panduan Anda tetapi saya mendapatkan kesalahan sebagai berikut: Failed to enable unit: Unit file mongod.service does not exist.@ Akash Jain
alper
Saya berhasil mengikuti ini, tetapi pada langkah 3 saya lakukan sudo systemctl enable mongodbdan untuk langkah 4 saya lakukan sudo systemctl start mongodb. Perhatikan hal yang tidak terduga bdi mongodb, bukan hanya mongod.
ArtHare
3

Saya juga menghadapi masalah persis yang disebutkan oleh OP, meskipun saya menginstal Mongodb menggunakan tutorial instalasi resmi ( https://docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/ ),

CATATAN: pada langkah 2 tutorial (buat file daftar untuk Mongodb), penting untuk mengklik tab khusus untuk versi Ubuntu tertentu pada mesin Anda. Secara default ini menunjukkan Ubuntu 14.04, yang menciptakan masalah yang disebutkan oleh OP (Gagal memulai mongod.service: Unit mongod.service tidak ditemukan)

Ketika saya akhirnya menyadari bahwa pada langkah 2 saya harus memilih Ubuntu 16.04 dengan benar (untuk saya), instal berhasil dan setelah mongod ini berjalan tanpa masalah.

Bharat Mallapur
sumber
Terima kasih, saya juga tidak melihat tab versi! Diinstal seperti pada docs.mongodb.com/manual/tutorial/install-mongodb-on-ubuntu/… kemudian ikuti instalasi lagi dengan versi yang sesuai.
Pete Montgomery