mongodb 学习笔记 08 -- replication复制集



官方文档:
http://docs.mongodb.org/manual/replication/

replication sets 多台服务器维护相同的数据副本


如何使用复制集

第一步

启动mongod是要指定复制集名字,通过 添加–replSet name 或者 在配置文件中设置replication.replSetName 设置复制集名称

比如:

mongod --port 270217 --dbpath /mongo/database --logpath /mongo/log/mongo.log --replSet repl_test --smallfiles &
mongod --port 270218 --dbpath /mongo2/database --logpath /mongo2/log/mongo.log --replSet repl_test --smallfiles &
mongod --port 270219 --dbpath /mongo3/database --logpath /mongo3/log/mongo.log --replSet repl_test --smallfiles &


第二步

进入其中一个
比如:

mongo --port 27017

然后定义rs.initiate(rsconf)的参数rsconf

rsconf = {
    _id:'repl_test',
    members:
    [
        {
            _id:0,host:'127.0.0.1:27017'        
        },
        {
            _id:1,host:'127.0.0.1:27018'        
        },
        {
            _id:2,host:'127.0.0.1:27019'        
        },
    ]
}


第三步

初始化复制集

rs.initiate(rsconf)




对复制集操作


查看复制集信息

默认_id:0 的mongod 为主节点

rs.status() 

删除节点

    rs.remove(host)

添加节点

rs.add(host)
rs.reconfig(rsconf)

默认进入主节点可以进行操作,如果进入secondary节点,想进行CRUD操作需要运行

rs.slaveOk()


如果主节点宕机了,剩下的节点有一个会自动变成主节点




你可能感兴趣的:(NoSQL,mongod)