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

来源:互联网 发布:仿淘宝拖拽式模板系统 编辑:程序博客网 时间:2024/05/16 02:06



官方文档:
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()


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




1 1