1.#vim /etc/mongod.conf
systemLog:
destination: file
path: “/home/work/mongodb/log/mongo.log”
logAppend: true
storage:
dbPath: /home/work/mongodb/db
engine: wiredTiger
journal:
enabled: true
processManagement:
fork: true
pidFilePath: /home/work/mongodb/var/mongo.pid
net:
port: 27017
security:
keyFile: /home/work/mongodb/key/mongodb.key
authorization: enabled
replication:
replSetName: SDXF
不同机器间通信必须要有key来验证
2.#mongod -f /etc/mongod.conf
//启动mongod
3.#mongo admin -uroot -proot
SDXF:PRIMARY>config={_id:”SDXF”,members:[{_id:0,host:”10.10.14.129:27017”},{_id:1,host:”10.10.12.153:27017”},{_id:2,host:”10.10.15.200:27017”}]}
SDXF:PRIMARY>rs.initiate(config)
SDXF:PRIMARY>rs.status()
SDXF:PRIMARY>rs.conf()
SDXF:PRIMARY>rs.isMaster()
SDXF:PRIMARY>config.members[2]={“_id”:2,”host”:”10.10.5.124:29002”,”arbiterOnly”:true}
//修改配置,添加一个投票节点SDXF:PRIMARY>rs.reconfig(config)
SDXF:SECONDARY>rs.slaveOk(true)
//从节点启动查询SDXF:PRIMARY>rs.stepDown(20)
//降级为从节点
4.配置文件都在local数据库里
db.system.replset.find()
5.从节点必须清除掉所有数据,包括admin,local,test数据库,show dbs为空时,方能启动
6.#mongostat -h 127.0.0.1:27017 -u root -p root --authenticationDatabase admin (--discover)
//监控
7.#mongotop -h 127.0.0.1:27017 -u root -p root --authenticationDatabase admin (--discover)
8.#echo "db.serverStatus().opcounters" | mongo admin -uroot -proot | sed -n '5p'
//zabbix监控
9.mongodb 服务在不正常关闭的情况下,mongod 被锁,可能是上次无故死机造成的
如何解决这种问题:
删除 mongod.lock 文件和日志文件 mongodb.log.2014-11-17T06-55-20 ,如果有必要把 log日志全部删除
mongod –repair –dbpath /data/db / –repairpath /tmp/mongodb