一、安装MongoDB
1.创建mongodb用户组和用户
groupadd mongodbuseradd -r -g mongodb -s /sbin/nologin -M mongodb
2.下载mongodb源码包,并将源码包放到/usr/local/src/目录下
这里用的是 mongodb-linux-x86_64-rhel62-3.2.10.tgz
3.进入src/目录
cd /usr/local/src/
4.解压源码包
tar -zxf mongodb-linux-x86_64-rhel62-3.2.10.tgz
5.创建mongodb文件目录
mkdir -p /usr/local/mongodb/data
mkdir -p /usr/local/mongodb/conf
mkdir -p /
var/run/mongodb
mkdir -p /
var/
log/mongodb
6.将文件复制到mongodb/目录
cp -R /usr/local/src/mongodb-linux-x86_64-rhel62-3.2.10/. /usr/local/mongodb
7.创建mongodb配置文件mongodb.conf
vim /usr/local/mongodb/conf/mongodb.conf
8.添加下面内容,保存退出
dbpath=/usr/local/mongodb/data
#数据目录存在位置logpath=/
var/
log/mongodb/mongodb.
log
#日志文件存放目录logappend=
true
#写日志的模式:设置为true为追加fork=
true
#以守护程序的方式启用,即在后台运行verbose=
truevvvv=
true
#启动verbose冗长信息,它的级别有 vv~vvvvv,v越多级别越高,在日志文件中记录的信息越详细maxConns=20000
#默认值:取决于系统(即的ulimit和文件描述符)限制。MongoDB中不会限制其自身的连接pidfilepath=/
var/run/mongodb/mongodb.piddirectoryperdb=
true
#数据目录存储模式,如果直接修改原来的数据会不见了profile=0
#数据库分析等级设置,0 关 2 开。包括所有操作。 1 开。仅包括慢操作slowms=200
#记录profile分析的慢查询的时间,默认是100毫秒quiet=
truesyncdelay=60
#刷写数据到日志的频率,通过fsync操作数据。默认60秒#port=27017 #端口#bind_ip = 10.1.146.163 #IP#auth=true #开始认证#nohttpinterface=false #28017 端口开启的服务。默认false,支持#notablescan=false#不禁止表扫描操作#cpu=true #设置为true会强制mongodb每4s报告cpu利用率和io等待,把日志信息写到标准输出或日志文件
9.
改mongodb目录权限
chown -R mongodb:mongodb /usr/local/mongodb
chown -R mongodb:mongodb /
var/run/mongodb
chown -R mongodb:mongodb /
var/
log/mongodb
10.将mongodb命令加入环境变量,修改profile文件
vim /etc/profile
11.修改为下面内容,保存退出
PATH=/usr/local/
mysql/bin:/usr/local/php/bin:/usr/local/redis/bin:/usr/local/mongodb/bin:
$PATH
12.使/etc/profile里的配置立即生效
source /etc/profile
13.将mongodb服务脚本加入到init.d/目录,创建mongod文件
vim /etc/init.d/mongod
14.加入下面内容,保存退出
#!/bin/sh # chkconfig: 2345 93 18# description:MongoDB
#默认参数设置#mongodb 家目录MONGODB_HOME=/usr/local/mongodb
#mongodb 启动命令MONGODB_BIN=
$MONGODB_HOME/bin/mongod
#mongodb 配置文件MONGODB_CONF=
$MONGODB_HOME/conf/mongodb.confMONGODB_PID=/
var/run/mongodb/mongodb.pid
#最大文件打开数量限制SYSTEM_MAXFD=65535
#mongodb 名字 MONGODB_NAME="mongodb". /etc/rc.d/init.d/functions
if [ ! -f
$MONGODB_BIN ]then
echo "
$MONGODB_NAME startup:
$MONGODB_BIN not exists! "
exitfistart(){ ulimit -HSn
$SYSTEM_MAXFD
$MONGODB_BIN --config="
$MONGODB_CONF" ret=$?
if [
$ret -eq 0 ]; then action $"Starting
$MONGODB_NAME: " /bin/
true
else action $"Starting
$MONGODB_NAME: " /bin/
false fi}stop(){ PID=$(ps aux |grep "
$MONGODB_NAME" |grep "
$MONGODB_CONF" |grep -v grep |wc -l)
if [[
$PID -eq 0 ]];then action $"Stopping
$MONGODB_NAME: " /bin/
false
exit fi kill -HUP `cat
$MONGODB_PID` ret=$?
if [
$ret -eq 0 ]; then action $"Stopping
$MONGODB_NAME: " /bin/
true rm -f
$MONGODB_PID
else action $"Stopping
$MONGODB_NAME: " /bin/
false fi}restart(){ stop
sleep 2 start}
case "$1" in start) start ;; stop) stop ;; status) status
$prog ;; restart) restart ;; *)
echo $"Usage: $0 {start|stop|status|restart}"esac
15.为mongod添加可执行权限
chmod +x /etc/init.d/mongod
16.将mongodb加入系统服务
chkconfig --add mongod
17.修改服务的默认启动等级
chkconfig mongod on
18.启动mongodb
service mongod start
19.防火墙端口允许
shell
>
firewall-cmd --zone=public --add-port=27017/tcp --permanent
shell
>
firewall-cmd --reload