天天看点

mongodb单机多实例主从配置

1、需要启动两个mongodb实例,首先关闭mongodb默认开机启动.

service mongodb stop
chkconfig mongodb off
           

2、复制 /etc/mongod.conf 

cp /etc/mongod.conf /etc/mongod_slave.conf
           

3、复制mongodb的数据库

cp -r /data/mongodb /data/mongodb_slave
chown -R mongodb:mongodb /data/mongodb_slave
           

4、更改mongodb_slave.conf的配置内容

logpath=/data/log/mongod_slave.log

logappend=true

# fork and run in background
fork=true

port=27018

dbpath=/data/mongodb_slave/mongodb

# location of pidfile
pidfilepath=/var/run/mongodb/mongod_slave.pid
           

5、单机多实例启动mongodb使用numactl命令。

启动主库:

/usr/bin/numactl --interleave=all /usr/bin/mongod -f /etc/mongod.conf --master
           

启动从库:

/usr/bin/numactl --interleave=all /usr/bin/mongod -f /etc/mongod_slave.conf --slave --source 127.0.0.1:27017
           

6、mongodb_slave日志提示 local.oplog.$main oplog is empty,同步信息为空。

7、mongo登录执行命令:

use local
db.slaves.find()
{ "_id" : ObjectId("5af2647ad59f36301ce74bbe"), "config" : { "host" : "127.0.0.1:47534", "upgradeNeeded" : true }, "ns" : "local.oplog.$main", "syncedTo" : Timestamp(1525857351, 1) }
           

从库绑定的端口号为47534

8、设置mongod_slave.conf port为47534。重启从库,实现主从同步。

继续阅读