1.下载安装包

将解压到/usr/local/mongodb 文件夹下

# mkdir /usr/local/mongodb
# tar zxvf mongodb-linux-x86_64-3.2.9.tgz -C /usr/local/mongodb

2.安装准备

创建数据库文件与日志文件、配置文件:

# mkdir -p data/db
# mkdir -p data/log
# touch data/log/mongod.log
# touch mongod.conf

mongod.conf配置文件如下:

#启用日志文件,默认启用

journal=true

#这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false

quiet=false

dbpath=/usr/local/mongodb/data/db

logpath=/usr/local/mongodb/data/log/mongod.log

logappend=true

# 端口号默认27019,这里只是为了防止冲突

port=27019

# 是否以守护进程方式运行

fork=true

# 是否以安全认证方式运行,默认是不认证的非安全方式

#auth = true

#noauth = true

# 详细记录输出

#verbose = true

# Inspect all client data for validity on receipt (useful for
# developing drivers)用于开发驱动程序时验证客户端请求 #objcheck = true # Enable db quota management # 启用数据库配额管理 #quota = true # 设置oplog记录等级 # Set oplogging level where n is # 0=off (default) # 1=W # 2=R # 3=both # 7=W+some reads #diaglog=0 # Diagnostic/debugging option 动态调试项 #nocursors = true # Ignore query hints 忽略查询提示 #nohints = true # 禁用http界面,默认为localhost:28017 #nohttpinterface = true # 关闭服务器端脚本,这将极大的限制功能 # Turns off server-side scripting. This will result in greatly limited # functionality #noscripting = true # 关闭扫描表,任何查询将会是扫描失败 # Turns off table scans. Any query that would do a table scan fails. #notablescan = true # 关闭数据文件预分配 # Disable data file preallocation. #noprealloc = true # 为新数据库指定.ns文件的大小,单位:MB # Specify .ns file size for new databases. # nssize = # Replication Options 复制选项 # in replicated mongo databases, specify the replica set name here #replSet=setname # maximum size in megabytes for replication operation log #oplogSize=1024 # path to a key file storing authentication info for connections # between replica set members #指定存储身份验证信息的密钥文件的路径 #keyFile=/path/to/keyfile

3.启动mongodb

  • 配置启动:
# cd bin
# ./mongod -config ../mongod.conf
  • 参数启动
# ./mongod --dbpath=/usr/local/mongodb/data/db --logpath=/usr/local/mongodb/data/log/mongodb.log --logappend -port=27019 --fork

注:如果加权限就用 –auth 参数,不需要权限就去掉

  • 系统服务启动:
# service mongod srart|stop|restart

将mongod服务添加为系统服务

1.创建文件

linux系统服务启动文件都存放在 /etc/init.d/ 下面,service mongod start 这样的命令是通过运行该目录下的脚本实现管理的,所以需要创建一个脚本文件mongod并修改读写权限

# cd /etc/init.d
# touch mongod
# chmod 755 mongod

另外还需要用到一个文件来保存服务pid,service mongod stop 命令就是通过这个文件读取服务pid的,可以建立在MongoDB的安装目录下面,

# cd /usr/local/mongodb/
# touch mongod.pid
# chmod 755 mongod.pid
2.编写mongod脚本,以下为脚本实例:
##-----------------------------------------
#!/bin/bash
#chkconfig:35 23 34
#description: MongoDB service
#set -x if [ -f /etc/init.d/functions ] ; then
##载入functions,. 在这里相当于source的功能
. /etc/init.d/functions
fi ##服务名,会多处调用
prog=mongod ##状态返回值,functions 函数会调用这个值
RETVAL=0 mongod=/usr/local/mongodb/bin/mongod MONGODB_CONF_FILE=/usr/local/mongodb/mongod.conf lockfile=/var/lock/subsys/${prog} ##subsys目录下的文件是用于给其他程序判断服务的实例运行状态的 pidfile=/usr/local/mongodb/mongod.pid start() {
echo -n $"Starting $prog: "
daemon $mongod --config $MONGODB_CONF_FILE ##daemon调用后面的命令执行情况
pgrep mongod>${pidfile} ##写入pid到pidfile
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch ${lockfile}
return $RETVAL
} stop () {
echo -n $"Stopping $prog: "
killproc -p ${pidfile} ##killproc 从pidfile 获取到pid,并杀死
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && /bin/rm -f ${lockfile}
return $RETVAL
} case $1 in
start)
start
;; stop)
stop
;; restart)
stop
start
;; *)
echo $"Usage: $0 {start|stop|restart}"
exit 2
;;
esac exit $?
##-----------------------------------------

通过这个脚本可以实现系统服务启动、关闭、重启mongod服务了,然后我们可以让他开机启动:

# chkconfig mongod on

注:可以将mongodb临时加入系统路径变量中,这样可以不用输入路径直接启动,代码如下:

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

然后查看是否成功:

# echo $PATH
  • 配置参数解释:

–dbpath 数据库路径(数据文件)

–logpath 日志文件路径

–master 指定为主机器

–slave 指定为从机器

–source 指定主机器的IP地址

–pologSize 指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,最好通过设置一个足够大的oplogSize来避免resync(默认的 oplog大小是空闲磁盘大小的5%)。

–logappend 日志文件末尾添加

–port 启用端口号

–fork 在后台运行

–only 指定只复制哪一个数据库

–slavedelay 指从复制检测的时间间隔

–auth 是否需要验证权限登录(用户名和密码)

–config 配置文件位置


用户授权和管理

//TODO

由于博主还未正常配置,所以。。。下次更新啦。。。

最后祝大家生活愉快(^__^) …..

Linux下MongoDB安装和配置详解的更多相关文章

  1. Linux中Nginx安装与配置详解

    转载自:http://www.linuxidc.com/Linux/2016-08/134110.htm Linux中Nginx安装与配置详解(CentOS-6.5:nginx-1.5.0). 1 N ...

  2. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

  3. nginx在linux上的安装与配置详解(一)

    Nginx的安装与配置详解 (1)nginx简介     nginx概念: Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like ...

  4. Linux下MongoDB安装和配置(二)

    1. 下载MongoDB 下载地址:https://www.mongodb.com/download-center/community 这里选择的是:mongodb-linux-x86_64-4.0. ...

  5. linux下nginx部署以及配置详解

    1.下载源码包解压编译 启动多个,请看:在linux系统下安装两个nginx以及启动 查看nginx包路径:http://nginx.org/download/,两种下载方式: 1.在官网下载使用Xf ...

  6. Mongodb安装与配置详解

    简介: mongodb作为一款通用型数据库,除了能够创建,读取,更新和删除数据外,还提供一系列不断扩展的独特功能. a.索引: mongodb支持二级索引,允许多种快速查询,且提供和唯一索引,复合索引 ...

  7. Jdk在window环境下的安装与配置详解

    本文为博主原创,转载请注明出处: 1.2  Java程序开发环境的配置 java开发工具包:java开发工具:记事本 IDE,这个只能写小程序,写大程序需要集成开发工具:反编译工具(我们可以在网上找一 ...

  8. linux 下 chkconfig安装与使用详解

    chkconfig 安装 开始的时候因为Raspbian的原因,系统是不自带chkconfig这个命令的, root@raspberrypi:~# chkconfig-bash: chkconfig: ...

  9. Linux中Nginx安装与配置详解 test(待整理 补全)

    http://www.linuxidc.com/Linux/2016-08/134110.htm http://www.cnblogs.com/freeweb/p/5425554.html http: ...

随机推荐

  1. windows编程学习笔记(三)ListBox的使用方法

    ListBox是Windows中的一种控件,一般被当做子窗口使用,Windows中所有子窗口都是通过发送一个通知码到父窗口父窗口通过WM_COMMAND消息接收,并在此消息中处理,并控制子窗口,Lis ...

  2. Mixin Network Whitepaper

    [译] Mixin Network(网络) 看到了李笑来老师牵头的 Mixin, 也仔细查看了 Mixin 白皮书 ,决定翻译过来 构造一个最大的,并且对开发者友好的移动区块链网络,连接现有的所有区块 ...

  3. 【读书笔记】【深入理解ES6】#2-字符串和正则表达式

    更好的Unicode支持 在ES6出现以前,JS字符串一直基于16位字符编码(UTF-16)进行构建. 每16位的序列是一个编码单元(code unit),代表一个字符. length.charAt( ...

  4. 解决Fiddler出现无线弹框 "creation of the root certificate was not successful”的问题

    打开Fiddler 访问:http://localhost:8888/ 安装证书,如果提示没有证书(8888是你在Tool->Fiddler Option->Connections设置的F ...

  5. OGG的孩子-有损音频编码opus

    Opus是一个有损声音编码的格式,由Xiph.Org基金会开发,之后由互联网工程任务组(IETF)进行标准化,目标用希望用单一格式包含声音和语音, 取代Speex和Vorbis,且适用于网络上低延迟的 ...

  6. 小乔注:java关键字static

    static是java中又一重要的关键字,在一定环境下使用,可以提高程序的运行性能,优化程序的结构.其主要应用有以下几方面: 1.static修饰的成员变量,称为类变量/静态变量,以实现所有对象对该成 ...

  7. 【Html5】-- 塔台管制

    想做这个游戏已久,今天终于初步完成,先解释下,这是一个模拟机场塔台管制指挥的游戏,飞机从不同的方向飞入管制空域,有不同的目的地,飞机名称最后一个字母表示飞机要到达的目的地,分ABCD和R.A-D表示四 ...

  8. Gym101473A Gym101473E Gym101473F-前缀和

    代码: #include<iostream> #include<cstring> #include<cstdio> #include<cmath> #i ...

  9. [国嵌攻略][174][CGI快速入门-网页控制LED]

    CGI程序(Common Gate Way Interface) 在服务器外部供服务器调用的程序,CGI程序与服务器配合后能让服务器完成更强大的功能. 1.浏览器通过HTML表单或超链接请求指向一个C ...

  10. [国嵌攻略][155][I2C用户态驱动设计]

    用户态驱动模型 用户态驱动模型首先是一个应用程序,其次是在这个用户程序中通过内核调用来驱动设备. IIC通用驱动代码 IIC通用驱动程序的代码在/drivers/i2c/i2c-dev.c中.一次读操 ...