一、安装

  1、从官方网站现在稳定的mongo版本。

  2、对下载的mongodb-linux-x86_64-rhel62-3.6.0.tgz文件进行解压   tar zxvf  mongodb-linux-x86_64-rhel62-3.6.0.tgz

  3、重命名解压后的文件夹为mongodb   mv  mongodb-linux-x86_64-rhel62-3.6.0   mongodb 

  4、将解压后的文件移动到指定的mongo目录下   mv  -r  mongodb  /usr/local/

  5、在/usr/local/mongodb目录下创建数据文件夹   mkdir  data

  6、在/usr/local/mongodb目录下创建数据文件用来保存日志   touch  log

  7、在/usr/local/mongodb/bin目录下创建配置文件   touch  mongodb.conf

  8、在配置文件中添加配置信息。

二、关闭和启动

   启动服务

      ./mongod -f mongodb.conf 

   关闭服务   

   ./mongod -shutdown -dbpath=/usr/local/mongodb/data

三、配置文件设置

   基础部分:

   port = 27017     //设置mongo服务的端口号

   bind_ip = 127.0.0.1  //服务运行时绑定的地址,默认127.0.0.1,只能通过本地连接。进程绑定和监听来自这个地址上的应用连接。要是需要给其他服务器连接,则需要注释掉这个或则把IP改成本机

    地址可以用一个逗号分隔的列表绑定多个IP地址。

          maxConns = 100   //最大连接数。默认值:取决于系统(即的ulimit和文件描述符)限制。MongoDB中不会限制其自身的连接。当设置大于系统的限制,则无效,以系统限制为准。这对于客户端创

    建很多“表”,允许连接超时而不关闭“表”的时候很有用。设置该值的高于连接池和总连接数的大小,以防止尖峰时候的连接。

   logpath=/var/log/mongodb/mongodb.log   //指定日志文件,该文件将保存所有的日志记录、诊断信息。除非另有指定,mongod将所有的日志信息输出到标准输出。如果没有指定logappend,重启

    则日志会进行覆盖操作。

   logappend=true   //写日志的模式:设置为true为追加。默认是覆盖。如果未指定此设置,启动时MongoDB的将覆盖现有的日志文件。

   pidfilepath = /var/run/mongo.pid    //进程ID,没有指定则启动时候就没有PID文件。默认缺省。

.   fork = true  //是否后台运行,设置为true 启动 进程在后台运行的守护进程模式。默认false。

   cpu = true  //设置为true会强制mongodb每4s报告cpu利用率和io等待,把日志信息写到标准输出或日志文件。默认为false。

   dbpath=/var/lib/mongodb   //数据存放目录。

   diaglog   //创建一个非常详细的故障排除和各种错误的诊断日志记录。默认0。设置为1,为在dbpath目录里生成一个diaglog.开头的日志文件,设置不等于0,日志会每分钟flush 一次,他的值如下:

Value Setting
0 off. No logging. #关闭。没有记录。
1 Log write operations. #写操作
2 Log read operations. #读操作
3 Log both read and write operations. #读写操作

7

Log write and some read operations. #写和一些读操作


  directoryperbd=true   //设置为true,修改数据目录存储模式,每个数据库的文件存储在DBPATH指定目录的不同的文件夹中。使用此选项,可以配置的MongoDB将数据存储在不同的磁盘设备上,以提高写

    入吞吐量或磁盘容量。默认为false。

  journal = true  //设置为true,启用操作日志,以确保写入持久性和数据的一致性,会在dbpath目录下创建journal目录。

  profile=0  //数据库分析等级设置。记录一些操作性能到标准输出或则指定的logpath的日志文件中,默认0:关闭。他的值如下:

级别 设置
0 关闭,无设置
1 开启慢查询操作
2 开启所有操作

  slowms = 200 //记录profile分析的慢查询的时间,默认是100毫秒。

  quota=true:配额,默认false。是否开启配置每个数据库的最多文件数的限制。

  quotaFiles=8:配额数量。每个数据库的数据文件数量的限制。此选项需要quota为true。默认为8。

复制集部分:

  replSet:使用此设置来配置复制副本集。指定一个副本集名称作为参数,所有主机都必须有相同的名称作为同一个副本集。

  oplogSize:指定的复制操作日志(OPLOG)的最大大小。mongod创建一个OPLOG的大小基于最大可用空间量。对于64位系统,OPLOG通常是5%的可用磁盘空间。 一旦mongod第一次创建OPLOG,

    改变oplogSize将不会影响OPLOG的大小。

  fastsync:默认为false。在副本集下,设置为true,从一个dbpath里启用从库复制服务,该dbpath的数据库是主库的快照,可用于快速启用同步,否则的mongod将尝试执行初始同步。注意:如果数据不

    完全同步,mongod指定fastsync开启,secondary或slave与主永久不同步,这可能会导致显着的一致性问题。

  replIndexPrefetch:2.2版本出现的新参数,默认是all。可以设置的值有:all, none, and _id_only。只能在副本集(replSet)中使用。默认情况下,secondary副本集的成员将加载所有索引到内存中

    (从OPLOG之前的操作有关的)。您可以修改此行为,使secondary只会加载_id索引。指定_id_或none,防止mongod的任何索引加载到内存。

  Master/Slave Replication:主从复制的相关设置 master:默认为false,当设置为true,则配置当前实例作为主实例。

  source:默认为空,格式为:<host><:port>。用于从实例的复制:设置从的时候指定该选项会让从复制指定主的实例 source = 127.0.0.1:30001only:默认为空,用于从选项,指定一个数据库进行复制。

  slavedelay:设置从库同步主库的延迟时间,用于从设置,默认为0。

  autoresync:默认为false,用于从设置。是否自动重新同步。设置为true,如果落后主超过10秒,会强制从自动重新同步。如果oplogSize太小,此设置可能有问题。如果OPLOG大小不足以存储主的变化状

    态和从的状态变化之间的差异,这种情况下强制重新同步是不必要的。当设置autoresync选项设置为false,10分钟内从不会进行大于1次的自动重新同步。

 分片集群部分:
   分片服务器与复制集的配置相同。
  配置服务器:  configsvr = true
  路由服务器:  configdb = configbd1,config2,.....,confign