Mongodb 主从复制与副本集实验
1.实验主从复制,并验证复制成功,抓图实验过程
Step1:创建相应的目录
Mkdir -p ./dbs/master
Mkdir -p ./dbs/slave
Step2:开启主服务
./bin/mongod --dbpath ./dbs/master --port 10000 --master
Step3:开启salve:
./bin/mongod --dbpath ./dbs/slave --port 10001 --slave --rest --nojournal --source localhost:10000
Step4:在主结点上做数据测试:
Mongo localhost:10000
Use evan
Db.users.insert({"userid","evan"});
Db.users.find();
Step5:在辅结点上查找数据,验证主从复制的效果:
Mongo localhost:10001
Use evan
Db.users.find()
2.实验副本集,并验证自动切换primary成功,抓图实验过程
启动三个结点:
./bin/mongod --dbpath ./dbs/node1 --port 10001 --replSet blort
./bin/mongod --dbpath ./dbs/node2 --port 10002 --replSet blort
./bin/mongod --dbpath ./dbs/node3 --port 10003 --replSet blort
连接其中一台结点:
mongo localhost:10001
初始化副本集
rs.initiate({"_id" : "blort","members" : [
{"_id" : 1,"host" : "localhost:10001"},
{"_id" : 2,"host" : "localhost:10002"},
{"_id" : 3,"host" : "localhost:10003"},
]}) ;
检查状态:
rs.status();
测试主从切换:
rs.stepDown(30);
再次查看状态:
rs.staus();
发现node1从primary变成secondary
node3从secondary变成primary