【你不知道的mongodb】-【Replica Sets操作】

一:搭建replica sets

详见:点击打开链接



二:添加一个成员到replica sets

replica sets 翻译,为副本集



1:现在已经启动5个node



2:连接到管理节点,查看状态




3:开始添加node


(1):启动新实例,host不变,port+1=29996

mongod -f node6.cfg

(2):添加到原来的副本集

登录到primary,执行


如图,则添加成功。

ps:rs.add({_id: 1, host: "mongodb3.example.net:27017", priority: 0, hidden: true})

(3):查看状态



(4):简单测试


primary插入一条数据

PRIMARY> show dbs;
local   0.09375GB
test    (empty)
PRIMARY> use test
switched to db test
PRIMARY> show collections;
PRIMARY> db.t.insert({key:"hello world"});
PRIMARY> db.t.find();
{ "_id" : ObjectId("5080bae6cbf7622fb83b505a"), "key" : "hello world" }
PRIMARY>

新增加的node中查看下,是否有?

C:\Documents and Settings\computer>mongo -port 29995
MongoDB shell version: 2.0.7
connecting to: 127.0.0.1:29995/test
SECONDARY> show dbs;
local   0.09375GB
test    0.03125GB
SECONDARY> use test;
switched to db test
SECONDARY> db.t.find();
error: { "$err" : "not master and slaveok=false", "code" : 13435 }
SECONDARY> db.getMongo().setSlaveOk();
not master and slaveok=false
SECONDARY> db.t.find();
{ "_id" : ObjectId("5080bae6cbf7622fb83b505a"), "key" : "hello world" }
SECONDARY>


注:

1:启动,配置rs都可以脚本话

2:一个node可以从副本集移除,也可以再次加入进来。

3:如果你对一个node创建了快照,你可以把data文件copy到一个新的系统中,然后用来初始化一个新的node。这样node同步时间可能会少点。

4:一个副本集中最多7个成员进行投票,如果当前副本集已经有7个可以投票的node,还想增加新node,

(1)、增加不参与投票的node

(2)、取消当前的7个中任意一个node的投票权。



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值