Bagaimana cara menginstal MongoDB 3.0 di Vivid?

8

Paket vivid resmi untuk mongodb adalah 2.x, dan paket-paket yang disediakan MongoDB di http://repo.mongodb.org/apt/ubuntu/dists/trusty/ hanya tersedia untuk rilis LTS.

Alternatifnya adalah saya bisa beralih kembali ke 14,04 LTS, tetapi saya perlu menginstal openjdk-8-jdk, yang hanya tersedia untuk vivid.

Hugh Rawlinson
sumber
1
Saya pikir tidak ada hal buruk yang akan terjadi jika Anda menginstalnya dari repo terpercaya ke vivid.
Pilot6

Jawaban:

13

Mungkin saja, MongoDB tidak memulai jika Anda menggunakan paket Trusty:

Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.

Dalam hal ini, instal paket Debian Wheezy seperti yang dijelaskan di bagian akhir.

Instal paket DEB Terpercaya

Unduh file DEB

cd
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-mongos_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-server_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-shell_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org-tools_3.0.3_amd64.deb
wget http://repo.mongodb.org/apt/ubuntu/dists/trusty/mongodb-org/3.0/multiverse/binary-amd64/mongodb-org_3.0.3_amd64.deb

Dan instal dengan (dalam urutan ini)

sudo dpkg -i mongodb-org-server_3.0.3_amd64.deb
sudo dpkg -i mongodb-org-tools_3.0.3_amd64.deb
sudo dpkg -i mongodb-org-shell_3.0.3_amd64.deb
sudo dpkg -i mongodb-org-mongos_3.0.3_amd64.deb
sudo dpkg -i mongodb-org_3.0.3_amd64.deb

Dan diambil dari komentar, terima kasih @ Pilot6 :

Mereka mungkin memiliki ketergantungan satu sama lain. Itu sebabnya paket instalasi satu per satu dapat memberikan kesalahan. saya menyarankansudo dpkg -i mongodb*.deb


Gunakan PPA Terpercaya

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
echo "deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org

Gunakan paket Debian Wheezy

Mungkin saja, MongoDB tidak memulai jika Anda menggunakan paket Trusty:

Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.

Dalam hal ini, instal paket Debian Wheezy seperti yang dijelaskan di bawah ini

sudo apt-get remove mongodb-org
sudo apt-get autoremove
sudo rm /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org
AB
sumber
Mereka mungkin memiliki ketergantungan satu sama lain. Itu sebabnya paket instalasi satu per satu dapat memberikan kesalahan. Saya sarankansudo dpkg -i mongodb*.deb
Pilot6
@ Pilot6 Oleh sudo dpkg -i mongodb-org_3.0.3_amd64.debkarena itu sebagai perintah terakhir
AB
Hanya sebuah saran. Dan itu lebih mudah sebagai satu perintah. Jika Anda menginstal beberapa paket dalam satu perintah, dependensi diselesaikan.
Pilot6
@ Pilot6 ditambahkan dan ditautkan =)
AB
Ok, saya menggunakan paket deb Trusty dan berhasil. Bagaimana cara menjalankannya sebagai layanan sehingga saya dapat memulai dan menghentikannya service mongod start?
Hugh Rawlinson
4

Berhasil diinstal dengan mongo versi 3.0.6 di Ubuntu 15.04 saya menggunakan repositori debian wheezy - lihat langkah-langkah di bawah ini

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

echo "deb http://repo.mongodb.org/apt/debian wheezy/mongodb-org/3.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list

sudo apt-get update

sudo apt-get install -y mongodb-org

Namun, setelah semua langkah di atas dan mongodb diinstal di mesin saya, sekarang ketika saya mencoba memulai layanan mongodb dengan sudo service mongod startitu akan gagal. Melemparkan pesan kesalahan berikut

Failed to start mongod.service: Unit mongod.service failed to load: No such file or directory.

Jadi, inilah cara saya menyelesaikan dan memulai mongodb secara normal

  • Ubah file penyimpanan data default MongoDB dari / var / lib / mongodb ke / data / db

  • sudo mkdir -p /data/db

  • sudo gedit /etc/mongod.conf dan ubah baris "dbpath" seperti di bawah ini

  • Ganti dbpath = / var / lib / mongodb KE dbpath = / data / db dan kemudian simpan file tersebut.

  • Kemudian hapus default lama / var / lib / mongodb

  • Sekarang kita harus membuat semua direktori / file yang dimiliki oleh pengguna mongod

  • Lari sudo chown -R mongodb:mongodb /data/db

Dan sekarang akhirnya saya bisa mulai dengan mongo sudo service mongod start

Dan chcek bahwa layanan ini berjalan dengan sudo systemctl status mongod - Seharusnya menampilkan pesan yang mirip dengan di bawah ini

Loaded: loaded (/etc/init.d/mongod)

Active: active (running) since Thu 2015-09-03 04:57:49 IST; 7s ago

Perincikan langkah-langkah saya di posting blog saya .

Rohan_Paul
sumber
1

Seperti yang saya katakan sebelumnya: Paket Debian / Ubuntu telah ditambal dengan unit layanan systemd, untuk mengisi lubang yang ditinggalkan oleh hal-hal yang diterbitkan langsung dari mongodb.org. Tetapi tidak ada kekurangan mongodb.servicefile unit di WWW. Tidak sulit untuk menulisnya juga. (Saya sudah.)

Khususnya: Anda akan menemukan unit layanan seperti itu di paket mongodb-server versi 2.6 untuk Ubuntu versi 15 . Memang ada juga unit layanan yang diterbitkan oleh mongodb.org . Ini hanyalah kasus bahwa orang-orang mongodb.org telah keliru menyatukan penggunaan RPM dengan penggunaan systemd dalam hal-hal khusus distribusi.

Perhatikan bahwa, ironisnya, unit layanan yang disediakan mongodb.org tidak menerapkan arahan unit layanan systemd yang direkomendasikan oleh mongodb.org sendiri . Begitu pula dengan yang disediakan Debian / Ubuntu. Tetapi, sekali lagi: Unit layanan tulisan tangan dengan arahan ini tidak sulit untuk ditulis; atau memang untuk memodifikasi untuk menambahkan hal-hal seperti numactl. ☺

Bacaan lebih lanjut

JdeBP
sumber
0

Yah tidak ada jawaban AB yang bekerja. Jadi satu-satunya pilihan saya adalah menginstal dari tarball

Ikuti, instruksi pada dokumen yang terkait dengan topik ini.

deostroll
sumber
0

Sebagai tambahan singkat untuk jawaban luar biasa @ AB. Pada amd64 yang jelas, dengan instalasi sebelumnya dari mongod 2.6 .26, cukup dengan mengganti sources.list.dfile yang ada

deb http://repo.mongodb.org/apt/ubuntu trusty/mongodb-org/3.0 multiverse

diikuti oleh dist-upgrade yang bekerja secara otomatis.

sudo apt-get update
sudo apt-get dist-upgrade
serv-inc
sumber