参考
http://www.mongodb.org/display/DOCS/Replica+Set+Tutorial
本实验三个节点,启动脚本如下
节点1
mkdir database\replset1
title: MongoDB replset1 Start by xiaofancn
bin\mongod.exe --replSet group --port 27001 --rest --dbpath database\replset1
节点2
mkdir database\replset2
title: MongoDB replset2 Start by xiaofancn
bin\mongod.exe --replSet group --port 27002 --rest --dbpath database\replset2
节点3
mkdir database\replset3
title: MongoDB replset3 Start by xiaofancn
bin\mongod.exe --replSet group --port 27003 --rest --dbpath database\replset3
配置
bin\mongo localhost:27001
rs.initiate({
_id : "group",
members : [
{_id : 0, host : "localhost:27001"},
{_id : 1, host : "localhost:27002"},
{_id : 2, host : "localhost:27003"}
]
});
rs.status();
使用rs.status(); 查看当前数据是不是primary 还是secondary,或者使用rs.isMaster();
测试代码
http://xiaofancn.iteye.com/blog/1163200
org.springframework.data.mongodb.examples.hello.AppConfig.java
主要修改代码
public @Bean
MongoOperations mongoTemplate(Mongo mongo) {
List<ServerAddress> setList = new ArrayList<ServerAddress>();
MongoOptions options = new MongoOptions();
try {
setList.add(new ServerAddress("localhost", 27001));
setList.add(new ServerAddress("localhost", 27002));
setList.add(new ServerAddress("localhost", 27003));
} catch (UnknownHostException e) {
e.printStackTrace();
}
options.autoConnectRetry = true;
mongo = new Mongo(setList,options);
MongoTemplate mongoTemplate = new MongoTemplate(mongo, "test");
return mongoTemplate;
}
其他就可以调用App.java操作