Step 1: Add MongoDB Yum Repository
Add following content in yum repository configuration file /etc/yum.repos.d/mongodb.repo.
For 64bit Systems:
[mongodb] name=MongoDB Repository baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/ gpgcheck=0 enabled=1
For 32bit Systems:
[mongodb] name=MongoDB Repository baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686/ gpgcheck=0 enabled=1
Step 2: Install MongoDB
Lets use yum package manager to install mongodb-org package, it will automatically install all its dependencies. To install any specific revision of mongodb specify package name with version likemongodb-org-2.6.1. Following command will install latest stable version available.
# yum install mongodb-org
Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile * atomic: www7.atomicorp.com * base: mirror.nbrc.ac.in * epel: mirrors.ispros.com.bd * extras: mirror.nbrc.ac.in * rpmforge: be.mirror.eurid.eu * rpmfusion-free-updates: mirror.smartmedia.net.id * updates: mirror.nbrc.ac.in Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package mongodb-org.i686 0:2.6.0-1 will be installed --> Processing Dependency: mongodb-org-tools = 2.6.0 for package: mongodb-org-2.6.0-1.i686 --> Processing Dependency: mongodb-org-shell = 2.6.0 for package: mongodb-org-2.6.0-1.i686 --> Processing Dependency: mongodb-org-server = 2.6.0 for package: mongodb-org-2.6.0-1.i686 --> Processing Dependency: mongodb-org-mongos = 2.6.0 for package: mongodb-org-2.6.0-1.i686 --> Running transaction check ---> Package mongodb-org-mongos.i686 0:2.6.0-1 will be installed ---> Package mongodb-org-server.i686 0:2.6.0-1 will be installed ---> Package mongodb-org-shell.i686 0:2.6.0-1 will be installed ---> Package mongodb-org-tools.i686 0:2.6.0-1 will be installed --> Finished Dependency Resolution Dependencies Resolved ========================================================================================== Package Arch Version Repository Size ========================================================================================== Installing: mongodb-org i686 2.6.0-1 mongodb 4.6 k Installing for dependencies: mongodb-org-mongos i686 2.6.0-1 mongodb 6.7 M mongodb-org-server i686 2.6.0-1 mongodb 8.9 M mongodb-org-shell i686 2.6.0-1 mongodb 4.2 M mongodb-org-tools i686 2.6.0-1 mongodb 88 M Transaction Summary ========================================================================================== Install 5 Package(s) Total download size: 108 M Installed size: 270 M Is this ok [y/N]: y Downloading Packages: (1/5): mongodb-org-2.6.0-1.i686.rpm | 4.6 kB 00:00 (2/5): mongodb-org-mongos-2.6.0-1.i686.rpm | 6.7 MB 00:21 (3/5): mongodb-org-server-2.6.0-1.i686.rpm | 8.9 MB 00:27 (4/5): mongodb-org-shell-2.6.0-1.i686.rpm | 4.2 MB 00:16 (5/5): mongodb-org-tools-2.6.0-1.i686.rpm | 88 MB 04:24 ---------------------------------------------------------------------------------------- Total 327 kB/s | 108 MB 05:36 Running rpm_check_debug Running Transaction Test Transaction Test Succeeded Running Transaction Warning: RPMDB altered outside of yum. ** Found 1 pre-existing rpmdb problem(s), 'yum check' output follows: google-chrome-stable-34.0.1847.116-1.i386 has missing requires of libnss3.so(NSS_3.14.3) Installing : mongodb-org-tools-2.6.0-1.i686 1/5 Installing : mongodb-org-server-2.6.0-1.i686 2/5 Installing : mongodb-org-mongos-2.6.0-1.i686 3/5 Installing : mongodb-org-shell-2.6.0-1.i686 4/5 Installing : mongodb-org-2.6.0-1.i686 5/5 Installed: mongodb-org.i686 0:2.6.0-1 Dependency Installed: mongodb-org-mongos.i686 0:2.6.0-1 mongodb-org-server.i686 0:2.6.0-1 mongodb-org-shell.i686 0:2.6.0-1 mongodb-org-tools.i686 0:2.6.0-1 Complete!
Step 3: Start MongoDB
Package mongodb-org-server provided MongoDB init script, Use that script to start service.
# service mongod start
Configure MongoDB to auto start on system boot.
# chkconfig mongod on
Step 4: Check MongoDB Version and Test Setup
Use following command to check installed mongodb version
# mongo --version MongoDB shell version: 2.6.0
Connect MongoDB using command line and execute some test commands for checking proper working.
# mongo > db.test.save( { a: 1 } ) > db.test.find() { "_id" : ObjectId("52b0dc8285f8a8071cbb5daf"), "a" : 1 }
Enabling authentication
The first thing to do before you can start making use of mongo’s UAC features it to enable authentication. Usually this is disabled by default.
This can be enabled either by editing your mongodb.conf file and adding the line
auth = true
You can also start mongod with the auth parameter.
Save the file, and reboot MongoDB.
service mongodb restart
That’s it! Your mongo server should be up and running! To test your Mongo configuration from another node (or to test authentication locally), run the command:
mongo <server_ip>/admin -u root -p <password>
to authenticate as root to make changes to the db structure or add users, or
mongo <server_ip>/project -u web_user -p <password>
to authenticate as web_user.
Install php driver
git clone https://github.com/mongodb/mongo-php-driver.git
cd mongo-php-driver
phpize
./configure
make
make install
echo "extension=mongo.so" >> /build/php/etc/php.ini