Hoe mongodb en mongodb-server te installeren op fedora linux (geverifieerd op f16 &f17). Alle opdrachten zijn bedoeld om in een su-sessie te worden uitgevoerd.
1) zorg ervoor dat er geen mongodb-installatie rondslingert
# yum erase mongodb
# yum erase mongo-10gen (if it is installed)
2) installeren vanuit fedora yum repository
# yum --disablerepo=* --enablerepo=fedora,updates install mongodb mongodb-server
3) start mongod (mongodb daemon)
# systemctl start mongod.service
4) controleer of mongod actief is
# systemctl status mongod.service
# tail /var/log/mongodb/mongodb.log
# nmap -p27017 localhost
of actieve klant
# mongo
MongoDB shell version: 2.0.2
connecting to: test
> db.test.save( { a: 1 } )
> db.test.find()
{ "_id" : ObjectId("4fdf28f09d16204d66082fa3"), "a" : 1 }
5) configuratie aanpassen
# vim /etc/mongodb.conf
# systemctl restart mongod.service
6) laat de mongodb-service automatisch starten bij het opstarten
# systemctl enable mongod.service
Update voor Fedora 18
Wanneer de mongod-service voor de eerste keer wordt gestart door systemd op een trage of geladen machine, kan er een time-out optreden voordat de initialisatie is voltooid, waarbij systemd de service als mislukt markeert.
Symptomen:
# journalctl -xn
-- Unit mongod.service has begun starting up.
10:38:43 local mongod[24558]: forked process: 24560
10:38:43 local mongod[24558]: all output going to: /var/log/mongodb/mongodb.log
10:40:13 local systemd[1]: mongod.service operation timed out. Terminating.
10:40:13 local systemd[1]: Failed to start High-performance, schema-free document-oriented database.
-- Subject: Unit mongod.service has failed
Zeer eenvoudige remedie, start de service opnieuw:
# systemctl restart mongod.service
dit zou de initialisatie met succes moeten afronden en de daemon in actieve staat laten.