卿卿子衿

青青子衿 悠悠我心

MongoDB安装和配置

安装 

目标操作系统和版本: CentOS 6.5 

在官网找到最新版本的yum源配置,新建一份yum源文件。

cat /etc/yum.repos.d/mongodb-org-3.4.repo
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc


然后执行 :  yum install -y mongodb-org

 系统配置 

1 mongoDB 强烈推荐使用WiredTiger配合XFS文件系统使用。
2 echo never > /sys/kernel/mm/transparent_hugepage/enabled
3 echo never > /sys/kernel/mm/transparent_hugepage/defrag


MongoDB配置

配置文件 , 默认配置文件路径 /etc/mongod.conf
配置文件使用yaml格式,主要注意日志文件路径和数据路径
配置 监听的IP和端口,注意如非必要,不要监听外网IP
配置复制集,可以在一开始启动的时候就配置只有一个实例的复制集,这样以后扩展的时候可以不用停止实例。

# mongod.conf                                                                                                                                                                                  
 
# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/
 
# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log
 
# Where and how to store data.
storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:
 
# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
 
# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  # Listen to local interface only, comment to listen on all interfaces.
#security:
#operationProfiling:
replication:
  oplogSizeMB: 200
  replSetName: repl1
#sharding:
## Enterprise-Only Options
#auditLog:
#snmp:


初始化复制集:

rs.initiate( {
   _id : "rs0",
   members: [ { _id : 0, host : "mongodb0.example.net:27017" } ]
})


检查复制集配置
rs.config()

为复制集增加实例
rs.add("mongodb1.example.net")

检查复制集状态
rs.status()