您的位置:首页 > 数据库 > Mongodb

3.5-MongoDB副本集测试

2016-03-27 11:35 274 查看
*MongoDB副本集测试
主上建库,建集合
>use mydb #建库
>db.acc.insert({AccountID:1,UserName:"123",password:"123456"}) #插入数据
>show dbs #查看库
从上查看
>show dbs
若出现错误Error: listDatabases failed:{ "note" : "from execCommand", "ok" : 0, "errmsg" : "not master" },需要执行
>rs.slaveok()

*MongoDB副本集更改权重模拟主宕机
默认三台机器权重都为1,如果任何一个权重设置为比其他的高,则该台机器马上切换为primary角色,所以我们预设三台机器的权重分别为:111:3,112:2,101:1
在主上执行
cfg = rs.conf() #重新赋值
cfg.members[0].priority = 3
cfg.members[1].priority = 2
cfg.members[2].priority = 1
rs.reconfig(cfg) #重新加载
这样的话,第二个节点将会成为候选主节点。
主上执行 iptables -I INPUT -p tcp --dport 27017 -j DROP

弊端:mongodb可以自动切换主从,而用户端无法自动切换到新的主上。需要手动来切换。

当原来的主宕机之后,在新的主恢复之前,原主写入的数据也会同步到新的主上。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: