mongodb 安装、自启动

linux mongodb 安装、自启动

可以使用root用户进行MongoDB的管理(启动、停止…),但对于追求卓越的人来说,我们新非root用户管理mongo更好。

安装mongodb

1、 下载安装包

wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-1.8.2.tgz

下载完成后解压缩压缩包

tar zxf mongodb-linux-i686-1.8.2.tgz

chmod -R 777 /home/share/

1.查看/etc/rc.local是否有执行权限,没有就加上

#chmod +x /etc/rc.local

接着,配置环境变量;

vi /etc/profile

export PATH=$PATH:/usr/local/mongodb/bin

2、安装准备

将mongodb移动到/usr/local/server/mongdb文件夹

mv mongodb-linux-i686-1.8.2 /usr/local/mongodb

创建数据库文件夹与日志文件

mkdir /usr/local/mongodb/data

touch /usr/local/mongodb/logs

3、设置开机自启动

将mongodb启动项目追加入rc.local保证mongodb在服务器开机时启动

echo "/usr/local/server/mongodb/bin/mongod --dbpath=/usr/local/server/mongodb/data –logpath=/usr/local/server/mongodb/logs –logappend --auth –port=27017" >> /etc/rc.local

/usr/local/mongodb/bin/mongod --dbpath /data/mongo_db/data --logpath=/data/mongo_db/logs --logappend

这种方式能保证开机mongod 进程能开启,但没有作为服务运行

先在/etc/rc.d/init.d下用vi 新建文件 mongod

内容如下:

#!/bin/bash
#
#chkconfig: 2345 80 90
#description: mongodb
start() {
 /usr/mongodb/bin/mongod --config /usr/mongodb/config/mongod.conf
}

stop() {
      /usr/mongodb/bin/mongod --config /usr/mongodb/config/mongod.conf --shutdown
}

case "$1" in
  start)
 start
 ;;

stop)
 stop
 ;;

restart)
 stop
 start
 ;;
  *)
 echo 
$"Usage: $0 {start|stop|restart}"
 exit 1
esac

保存

/etc/mongodb/mongod.conf 配置文件的内容如下

#master.conf
dbpath=/usr/mongodb/data/db
logpath=/usr/mongodb/log/db.log
pidfilepath=/usr/mongodb/db.pid
directoryperdb=true
logappend=true
fork=true

4、增加服务并开机启动
chmod +x /etc/rc.d/init.d/mongod
chkconfig --add mongod
chkconfig --level 345 mongod on
chkconfig --list mongod

service mongod start

遇到的问题:

└─(root@host-192-168-1-20)$ /usr/local/mongodb/bin/mongod --config /etc/mongodb/mongod.conf
2017-04-10T13:33:54.404+0800 F CONTROL  [main] Failed global initialization: UnknownError: Cannot get current working directory: No such file or directory
ls /data/mongo_db/data/
cd /data/mongo_db/data/
touch /data/mongo_db/mongod.log
touch /data/mongo_db/mongod.pid

results for ""

    No results matching ""