Centos6.5安装配置mongodb

千磨万击还坚劲,任尔东西南北风。这篇文章主要讲述Centos6.5安装配置mongodb相关的知识,希望能为你提供帮助。


mongodb官网上下载最新版本的mongodb,按照官网上的说明进行安装:

首先运行如下命令:

curl -O http://downloads.mongodb.org/linux/mongodb-linux-x86_64-2.6.3.tgz

其次,运用tar 进行解压缩,按照如下命令
tar -zxvf mongodb-linux-x86_64-2.6.3.tgz

第三,新建mongodb文件夹,把解压了的mongodb-linux-x86_64-2.6.3复制到mongodb下面。
按照如下命令
mkdir -p mongodb
cp -R -n mongodb-linux-x86_64-2.6.3/ mongodb

第四,更改环境变量,在路径 /etc/下面,找到bashrc文件
export PATH=< mongodb-install-directory> :$PATH

【Centos6.5安装配置mongodb】替换成你的mongodb路径就可以了
第五,创建mongodb的dbdata的路径
mkdir -p/usr/local/mongo/data
mongod --dbpath /usr/local/mongo/data

第六,进入mongo的文件夹,运行mongo命令,启动mongo就可以了。
上面的安装方法比较简单,但是有个问题,就是mongo启动必须同时制定data,也就是要运行mongod --dbpath /usr/local/mongo/data,比较繁琐,下面介绍一种一劳永逸的安装办法,把mongo的启动添加到服务当中。但是必须制定安装的版本,本例以mongodb-src-r1.8.1.tar.gz 具体可以参考博客:http://www.9958.pw/post/centos_mongodb  注:每个版本必须和博客中一致,下面对rin博客的这篇文章做一下转载!
下载所需软件(下载到/usr/local/src目录)
#wget http://downloads.mongodb.org/src/mongodb-src-r1.8.1.tar.gz#wget http://ftp.mozilla.org/pub/mozilla.org/js/js-1.7.0.tar.gz#wget http://sourceforge.net/projects/pcre/files/pcre/8.12/pcre-8.12.tar.bz2

安装 python
(注:scons必须是2.0.1的,具体下载地址是http://prdownloads.sourceforge.net/scons/scons-2.0.1.tar.gz):
#yum install -y python-devel
安装scons: 下载scons(http://www.scons.org/download.php)tar zxf scons-2.0.1.tar.gz
cd scons-2.0.1python setup.py install

安装spidermonkey库,
下载支持c的js api库 js-1.7.0.tar.gz(http://ftp.mozilla.org/pub/mozilla.org/js/)
yum install -y boost boost-devel

tar zxvf js-1.7.0.tar.gz
cd js/src/export CFLAGS="-DJS_C_STRINGS_ARE_UTF8"make -f Makefile.refJS_DIST=/usr gmake -f Makefile.ref export
cd ../..

安装pcre
tar zxf pcre-8.12.tar.gz
cd pcre-8.12./configure --enable-utf8 --enable-unicode-properties
make & & make install
cd ..

安装MongoDB
tar zxf mongodb-src-r1.8.1.tar.gz
cd mongodb-src-r1.8.1scons all// scons可能出现找不到pcre库的现象(修改/etc/ld.so.conf也无用,是scons自身的问题),这时需要打开mongodb-src-r1.8.0下的SConstruct,查找【 linux2"== os.sys.platform:】,在LIBPATH后面添加上pcrecpp库的安装路径,在LIBS后添加上pcrecpp库名,再重新scons all即可(操作:vim SConstruct; 原来:env.Append( LIBPATH=["/usr/lib64" , "/lib64" ] ) ;修改后env.Append( LIBPATH=["/usr/lib64" , "/lib64" ,"/usr/local/pcre/lib"]); 接下来在env.Append( LIBS=["pthread"] )后面添加 env.Append( LIBS=["libpcrecpp"] ))scons --prefix=/usr/local/mongo install如果需要安装lib和head,使用如下方式安装scons --prefix=/usr/local/mongo --full install

创建配置文件
mkdir -p /usr/local/mongo/etc /usr/local/mongo/data /usr/local/mongo/log/ /usr/local/mongo/repair
vim/usr/local/mongo/etc/mongo.conf在mongo.conf中添加下面的内容dbpath = /usr/local/mongo/data
logpath = /usr/local/mongo/mongodb.log
repairpath = /usr/local/mongo/repair
pidfilepath = /usr/local/mongo/mongodb.pid
directoryperdb = truelogappend = truenoauth = trueport = 27017maxConns = 1024fork = truerest = truequota = truequotaFiles = 1024nssize = 16启动mongodb

ln -s /usr/local/mongo/bin/mongod /usr/bin/mongod
mongod -f /usr/local/mongo/etc/mongo.conf

看看是不是启动起来了,但是使用这种方式管理mongodb服务器很不明智,我们完善一下:
mkdir -p /usr/local/mongo/srv
vim /usr/local/mongo/srv/mongodb-start

添加下面的内容
#!/bin/shmongod -f /usr/local/mongo/etc/mongo.conf
vim /usr/local/mongo/srv/mongodb-stop

添加下面的内容
#!/bin/bashpid=`ps -o pid,command ax | grep mongod | awk !/awk/ & & !/grep/ print $1`; if [ "$pid" != "" ]; then
kill -2 $pid; fi

添加执行权限
chmod a+x /usr/local/mongo/srv/mongodb-start
chmod a+x /usr/local/mongo/srv/mongodb-stop
vim /etc/rc.d/init.d/mongodb

添加下面的内容
#! /bin/sh## mongodb – this script starts and stops the mongodb daemon## chkconfig: - 85 15# description: MongoDB is a non-relational database storage system.# processname: mongodb# config: /usr/local/mongo/etc/mongo.conf# pidfile: /usr/local/mongo/mongodb.pidPATH=/usr/local/mongo/bin:/sbin:/bin:/usr/sbin:/usr/bin
NAME=mongodb
test -x $DAEMON || exit 0set -ecase "$1" in
start)
echo -n "Starting MongoDB... "
/usr/local/mongo/srv/mongodb-start
; ;
stop)
echo -n "Stopping MongoDB... "
/usr/local/mongo/srv/mongodb-stop
; ;
*)
N=/etc/init.d/$NAME
echo "Usage: $N start|stop" > & 2
exit 1
; ;
esac
exit 0

添加服务
chmod a+x /etc/rc.d/init.d/mongodb
chkconfig --add mongodb
chkconfig --level 345 mongodb on/etc/rc.d/init.d/mongodb start










    推荐阅读