为接下来的工作热一下手。。

以前看过一本书,了解了,但好像有三四年,又忘了。。:(

参考URL:

http://www.centoscn.com/image-text/install/2014/1124/4171.html

环境:

  系统硬件:vmware vsphere (CPU:2*4核,内存2G)

  系统版本:Centos-6.5-x86_64

  *** Centos编译安装mongodb 2.6 系统最好是64位的,才能更好发挥mongodb的性能

安装步骤:

  0.系统环境

  [root@centos ~]# cat /etc/redhat-release

  CentOS release 6.5 (Final)

  [root@centos ~]# uname -a

  Linux centos 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

  [root@centos ~]# yum install vim wget -y

  1.下载源文件(二进制编译版)

  [root@centos ~]# mkdir -p /data/src

  [root@centos ~]# cd /data/src

  [root@centos ~]# wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.6.1.tgz

  [root@centos ~]# tar -zvxf mongodb-linux-x86_64-2.6.1.tgz

  [root@centos ~]# mv mongodb-linux-x86_64-2.6.1 /opt/mongodb/

  2.配置path环境变量,确保mongodb的bin目录包含在path环境变量中。

  2.1 配置PATH

  [root@centos ~]# vim /etc/profile

  添加下面的内容:

  #set for mongodb
  export MONGODB_HOME=/opt/mongodb
  export PATH=$MONGODB_HOME/bin:$PATH

  保存退出

  2.1查看当前PATH

  [root@centos ~]# echo $PATH

  2.2让环境变量生效:

  [root@centos ~]# source /etc/profile

  [root@centos ~]# echo $PATH

  

  3.验证环境变量是否生效

  [root@centos ~]# mongod -version

  4.建立存储数据及日志的目录:

  4.1建立目录

  [root@centos ~]# mkdir -p /data/mongodb/journal

  [root@centos ~]# mkdir -p /data/mongodb/log

  4.2建立日志文件

  [root@centos ~]# touch /data/mongodb/log/mongodb.log

  4.3建立配置文件

  [root@centos ~]# vim /etc/mongodb.conf

  输入以下内容,保存并退
dbpath=/data/mongodb
logpath=/data/mongodb/log/mongodb.log
logappend=true
port=27017
fork=true
noauth=true
nojournal = true
smallfiles = true
noprealloc = true

  5.增加mongodb用户及设置权限

  5.1增加用户

  [root@centos ~]# useradd mongodb -M -s /sbin/nologin

  5.2设置目录权限

  [root@centos ~]#chown -R mongodb.mongodb /data/mongodb
  

  6.重启,启动服务

  6.1重启
  [root@centos ~]# shutdown -r now

  6.2重启后,运行mongod服务
  [root@centos ~]# mongod -f /etc/mongodb.conf

  7.测试服务是否正常

  7.1打开另一个终端,并以管理员身份进入管理后台

  [root@centos ~]#mongo admin

  >show dbs;

  >db.test.find();

  >exit

  8.将mongod服务加到开机启动服务

  8.1编写服务文件

  [root@centos ~]# vim /etc/init.d/mongod

  输入以下内容,并且保存退出(见后面的代码)

  8.2设置为启动服务

  [root@centos ~]# chkconfig --add mongod

  [root@centos ~]# chkconfig --level 345 mongod on

  [root@centos ~]# chmod +x  /etc/init.d/mongod

  8.3测试
  [root@centos ~]#service mongod start

  [root@centos ~]#service mongod status

  

  9.重启,并且测试

  [root@centos ~]#shutdown -r now

  [root@centos ~]#service mongod status

  [root@centos ~]#mongo admin

  >show dbs;

  >db.test.find();

  >exit

  **********************************************
  mongodb的参数说明:
   --dbpath        数据库路径(数据文件)
  --logpath       日志文件路径
  --master        指定为主机器
  --slave         指定为从机器
  --source        指定主机器的IP地址
  --pologSize     指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,

    最好通过设置一个足够大的oplogSize来避免resync(默认的 oplog大小是空闲磁盘大小的5%)。
  --logappend     日志文件末尾添加
  --port          启用端口号
  --fork          在后台运行
  --only          指定只复制哪一个数据库
  --slavedelay    指从复制检测的时间间隔
  --auth          是否需要验证权限登录(用户名和密码)

#!/bin/sh
#
# mongodb      init file for starting up the MongoDB server
#
# chkconfig:   -
# description: Starts and stops the MongDB daemon that handles all \
#              database requests.

# Source function library.
. /etc/rc.d/init.d/functions

exec="/opt/mongodb/bin/mongod"
prog="mongod"
logfile="/data/mongodb/log/mongodb.log"
options=" -f /etc/mongodb.conf"

[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog

lockfile="/var/lock/subsys/mongod"

start() {
    [ -x $exec ] || exit
    echo -n $"Starting $prog: "
    daemon --user mongodb "$exec --quiet $options run >> $logfile 2>&1 &"
    retval=$?
    echo
    [ $retval -eq  ] && touch $lockfile
    return $retval
}

stop() {
    echo -n $"Stopping $prog: "
    killproc $prog
    retval=$?
    echo
    [ $retval -eq  ] && rm -f $lockfile
    return $retval
}

restart() {
    stop
    start
}

reload() {
    restart
}

force_reload() {
    restart
}

rh_status() {
    # run checks to determine if the service is running or use generic status
    status $prog
}

rh_status_q() {
    rh_status >/dev/>&
}

case "$1" in
    start)
        rh_status_q && exit
        $
        ;;
    stop)
        rh_status_q || exit
        $
        ;;
    restart)
        $
        ;;
    reload)
        rh_status_q || exit
        $
        ;;
    force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit
        restart
        ;;
    *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
        exit
esac
exit $?

在CENTOS6上安装MONGODB的更多相关文章

  1. 在 CentOS7 上安装 MongoDB

    在 CentOS7 上安装 MongoDB 1 通过 SecureCRT 连接至 CentOS7 服务器: 2 进入到 /usr/local/ 目录: cd /usr/local 3 在当前目录下创建 ...

  2. 如何在CentOS/RHEL & Fedora上安装MongoDB 3.2

    MongoDB(名称取自"huMONGOus")是一个有着全面灵活的索引支持和丰富的查询的数据库.MongoDB通过GridFS提供强大的媒体存储.点击这里获取MongoDB的更多 ...

  3. Ubuntu上安装MongoDB(译)

    add by zhj:直接从第四步开始就可以了,而且安装好MongoDB后会自动启动的,不必自己去执行启动命令 原文:https://docs.mongodb.com/manual/tutorial/ ...

  4. 在Windows上安装MongoDB

    原文官方文档:https://docs.mongodb.org/v2.6/tutorial/install-mongodb-on-windows/ 基于版本:MongoDB 2.6 概览 通过这个示例 ...

  5. 在 Ubuntu 上安装 MongoDB

    在 Ubuntu 上安装 MongoDB 运行下列命令,导入 MongoDB 公开 GPG 键: sudo apt-key adv --keyserver hkp://keyserver.ubuntu ...

  6. Ubuntu 12.04上安装 MongoDB并运行

    Ubuntu 12.04上安装 MongoDB并运行 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 在Terminal输入 sudo apt-key ...

  7. window上安装 MongoDB 及其 PHP扩展

    window上安装 MongoDB 及其 PHP扩展   工具/原料   window MongoDB MongoDB 方法/步骤     MongoDB 下载 MongoDB提供了可用于32位和64 ...

  8. (转)在 CentOS7 上安装 MongoDB

    在 CentOS7 上安装 MongoDB 1 通过 SecureCRT 连接至 CentOS7 服务器: 2 进入到 /usr/local/ 目录: cd /usr/local 3 在当前目录下创建 ...

  9. 在 CentOS6 上安装 GraphicsMagick-1.3.30

    在 CentOS6 上安装 GraphicsMagick-1.3.30 1.简介: 1.1.在介绍 GraphicsMagick 前我们不得不先介绍下 ImageMagick: ImageMagick ...

随机推荐

  1. OpenJDK和Sun/OracleJDK 区别 与联系

    首先要先明确之间,以及OpenJDK 6.OpenJDK 7.OpenJDK 7u和OpenJDK 8等项目之间是什么关系,这有助于确定接下来编译要使用的JDK版本和源码分支.从前面介绍的Java发展 ...

  2. 所有Mac用户都需要知道的9个实用终端命令行<转>

    转自 http://www.macx.cn/thread-2075903-1-1.html 通常情况下,只有高端用户才会经常用到终端应用.这并不意味着命令行非常难学,有的时候命令行可以轻松.快速的解决 ...

  3. 《转载》CSS中的三种样式来源:创作人员、读者和用户代理

    CSS中的样式一共有三种来源:创作人员.读者和用户代理,来源的不同会影响到样式的层叠方式,很多第一次学习CSS的朋友,对这三种来源可能会存在一些困惑,下面我写一下自己的理解,若有错误的地方还请指正. ...

  4. 一封给“X教授”的回信(讨论Socket通信)

    转载:http://www.cnblogs.com/tianzhiliang/archive/2011/03/02/1969187.html 前几天"X教授"发Email与我讨论S ...

  5. ASP.NET程序如何更新发布

    ASP.NET程序如何更新发布 一.首先右键项目,点击“发布” 然后,新建名称.类型选择文件,然后点击下一步: 点击发布即可! 二.

  6. pat_1009

    1009. 说反话 (20) 时间限制 400 ms 内存限制 32000 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 给定一句英语,要求你编写程序,将句中 ...

  7. Play - js/css concatenation & minify

    1. Css We’ll use LESS CSS, all less sources are defined in the app/assets, and they will be compiled ...

  8. SQL大量数据查询的优化 及 非用like不可时的处理方案

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...

  9. Object-C 设计类接口

    在Object-C中,一个类通常分为两部分,.h头文件和.m实现文件. 类的接口(interface)通常存放在类似ClassName.h的文件中.在这里我们定义实例变量和公用(public)方法. ...

  10. ipad屏幕旋转后的代理

    - (void)statusBarOrientationChange:(NSNotification *)notification {         UIInterfaceOrientation o ...