官方文档:
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()
如果主节点宕机了,剩下的节点有一个会自动变成主节点
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-08-14 16:51:24