环境部署: 运行三个节点:每个节点都执行以下操作 >wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.2.tgz >tar xf mongodb-linux-x86_64-rhel70-4.0.2.tgz -C /root/ >mv mongodb-linux-x86_64-rhel70-4.0.2 mongodb4.0.2 >echo 'export PATH=/root/mongodb4.0.2/bin:$PATH' >> /etc/profile >source /etc/profile >cd mongodb4.0.2 > mkdir data logs > 数据目录和日志目录 修改配置文件 > cat mongodb.conf logpath=/root/mongodb4.0.2/logs/mongod.log > 日志路径 logappend=true > 是否日志追加 fork=true > 后台启动 port=27017 > 端口 dbpath=/root/mongodb4.0.2/data > 数据目录 pidfilepath=/root/mongodb4.0.2/data/mongod.pid > pid oplogSize=4096 > 设置oplog的大小 maxConns=640000 > 最大同时连接数 默认2000 directoryperdb=true > 设置每个数据库将被保存在一个单独的目录 bind_ip=0.0.0.0 > 监听 replSet=rs0 启动mongodb >./bin/mongod -f mongodb.conf > 三个节点配置都一样,都要启动 进入mongo 进行配置 (设置优先级) >mongo 第一步: >cfg={ _id:"rs0", members:[ {_id:0,host:'10.4.29.185:27017',priority:2},{_id:2,host:'10.4.29.187',priority:1}, {_id:1,host:'10.4.29.191:27017',arbiterOnly:true}]} 第二步: >rs.initiate(cfg) 第三步:验证结果: 在 primary上操作 rs0:PRIMARY> use pay rs0:PRIMARY> db.pay.insert({"_id":"1"}) rs0:PRIMARY> show dbs; 在secondary上操作 rs0:SECONDARY> db.getMongo().setSlaveOk(); rs0:SECONDARY> show dbs; admin 0.000GB config 0.000GB local 0.000GB pay 0.000GB 证明已成功;