最近因为调整办公点,新地方的网段与原先不同,无柰只好修改虚拟机IP,因为测试环境是部署在我的虚拟机,一通好改,把环境都弄好了,突然想起Mongodb也得改,那就改吧;
先说说Mongodb测试库的配置情况:一路由、一config库、两复制集(一个在我虚拟机,一个在另外一台虚机,此虚机在公司机房),复制集的情况很简单,一主一备,在公司机房虚机的那个复制集不用动,只需调整我虚拟机的配置。
启动mongodb实例、配置服务器及路由:
1../mongod --shardsvr --replSet rs1 --dbpath=~/mongoDB/28001/ --port 28001 --logpath=~/mongoDB/logs/28001.log --logappend --fork
2../mongod --shardsvr --replSet rs1 --dbpath=~/mongoDB/28002/ --port 28002 --logpath=~/mongoDB/logs/28002.log --logappend --fork
3../mongod --configsvr --dbpath=~/mongoDB/config/ --port 28000 --logpath=~/mongoDB/logs/28000.log --logappend --fork
4../mongos --port 30000 --configdb=ip:28000 --fork --logpath=~/mongoDB/logs/mongo.log --logappend
通过./mongo --port 28001 进入虚机mongod实例,必须先进行复制集初始化,否则addUser会失败,按以下步骤设置复制集:
1.cfg = { _id: "rs1", members:[ { _id:0,host:"ip:28001"}, { _id:1, host:"ip:28002"} ]}
2.rs.initiate(cfg)
3.use admin
4.db.addUser("用户名",”密码“)
5.db.auth("用户名",”密码")
进入路由重新配置复制集配置:
1.db.runCommand({addshard:"rs1/虚拟机ip:28001"})
2.db.runCommand({addshard:"rs2/机房ip:28001"})
至此配置完成,但是在通过mongochef连路由的时候,刷新数据库发现查看表时出错,通过查找资料及实践,只要重启服务即可,关闭所有复制集服务,关闭配置服务器及路由,依次启动各复制集服务,最后启动配置服务器及路由。