butter7372 发表于 2015-7-7 10:13:51

MongoDB配置多个ConfigDB的问题(笔记)

  由于在部署集群之前没有做好的规划,在集群中只有一个configserver和一个mongos。网上都推荐多个configserver,本人在使用的过程中发现在启动mongos进程时,congfigdb参数配置configdb需要得奇数个(比如:1、3、5...)。OK配置三个configserver吧(一个已经存在,记录了集群的配置信息)。启动mongos进程,立马发现报错信息:
  config servers not in sync! config servers ** and ** differ
  根据字面意思,这几个配置库的信息不同步。解决方法:将已经存在的配置库的数据导入到其他几个库中。操作脚本如下:
  1、导出数据,mongodump.exe 192.98.12.60:50001 -d config 生成备份信息,默认的情况下在命令执行的目录下生一个dump文件夹,dump文件夹下生成config库的一些数据,以bson格式保存,
  具体如下图表示:

  2、导入备份数据:
  mongorestore.exe--port 50003 --db configdump/config
  mongorestore.exe--port 50004 --db configdump/config
  
  3、重新启动mongos
  mongos.exe -f c.conf
  其中c.conf配置内容如下所示:



#route.conf
configdb=192.98.12.60:50001,192.98.12.60:50003,192.98.12.60:50004
logpath=route1.log
pidfilepath=route1.pid
port=50002
  OK,一切正常,集群可以正常启动(如果配置多个mongos,可以copy上述配置文件多个,然后修改不同的port,然后执行不同mongos命令,即可启动多个mongos)。
  
页: [1]
查看完整版本: MongoDB配置多个ConfigDB的问题(笔记)