GNU/Linux >> Belajar Linux >  >> Linux

Layanan MongoDB Tidak Akan Dimulai Setelah Pengaturan Awal

Saya telah menghabiskan beberapa waktu untuk menyelidiki hal ini, dan sepertinya folder pid dan izin file tidak berfungsi dengan daemon default.

Solusi paling sederhana yang saya temukan adalah menonaktifkan file pid dengan hanya meletakkan # di depan baris di file konfigurasi.

vi /etc/mongod.conf

temukan baris yang mengatakan pidfilepath=/var/run/mongodb/mongod.pid dan ubah sesuai itu.

# pidfilepath=/var/run/mongodb/mongod.pid

Untuk informasi tentang apa yang dikomentari, periksa di sini.http://docs.mongodb.org/manual/reference/configuration-options/#processManagement.pidFilePath


Jika Anda memulai mongod sebagai layanan menggunakan:

layanan sudo mongod mulai

Pastikan direktori yang ditentukan untuk logpath, dbpath, dan pidfilepath di mongod.conf Anda ada dan dimiliki oleh mongod:mongod.


Saya memiliki masalah yang sama, saya menyelesaikannya untuk sementara, menonaktifkan SELinux, menyalakan ulang mesin, menghilangkan mongod.lock:

#rm /var/lib/mongo/mongod.lock

Dengan membuat file /var/run/mongodb/mongo.pid (sebagaimana disebutkan dalam file konfigurasi /etc/mongod.conf):

#mkdir /var/run/mongodb
#touch /var/run/mongodb/mongod.pid

dan memberikan 777 izin:

#chmod 777 /var/run/mongodb/mongod.pid 

dan memulai mongo:

#service mongod start

Namun masalah tetap ada setelah menghidupkan ulang mesin. Folder dan file menghilang.


Apa yang berhasil bagi saya di Fedora 20:kita perlu membuat dir temp di setiap boot, dan itu ditangani oleh systemd-tmpfiles. Jadi, buat file /lib/tmpfiles.d/mongodb.conf dan masukkan satu baris di dalamnya:

d /var/run/mongodb 0755 mongod mongod

Itu sepertinya menanganinya saat restart; jika Anda tidak ingin segera memulai ulang, Anda dapat menjalankannya dengan:

sudo systemd-tmpfiles --create mongodb.conf

(Lihat halaman manual untuk file systemd-tmp)


Linux
  1. Linux – Ubah /proc/pid/environ Setelah Proses Dimulai?

  2. Centos – Systemd Membunuh Layanan Segera Setelah Mulai?

  3. Gimp Tidak Akan Mulai, Gegl Error?

  1. systemctl:perintah tidak ditemukan

  2. layanan:perintah tidak ditemukan

  3. chkconfig:perintah tidak ditemukan

  1. MongoDB Gagal Mulai - ***dibatalkan setelah kegagalan fassert()

  2. Cara memulai layanan systemd setelah pengguna masuk dan menghentikannya sebelum pengguna keluar

  3. Boot Ubuntu 16.04 ke baris perintah / jangan mulai GUI