MongoDB配置多个ConfigDB的问题(笔记)
2023-09-27 14:28:39 时间
由于在部署集群之前没有做好的规划,在集群中只有一个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 config dump/config
mongorestore.exe --port 50004 --db config dump/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)。
相关文章
- MongoDB快速上手
- MongoDB 3.x 安装配置
- mongodb分页
- mongodb备份和恢复
- mongodb的mongotop
- mongodb的游标
- mongodb.conf配置文件
- 006.MongoDB副本集
- MongoDB基本查询语句
- MongoDB安装(一)
- MongoDB基本概念和安装配置
- Centos 6.9安装配置MongoDB
- PHP操作MongoDB数据库的示例
- mongodb连接配置实践
- mongodb权限管理(转)
- MongoDB创建集合、删除集合、重命名集合
- 推荐一个php7+ mongodb三方类
- MongoDB为什么比Mysql高效
- log4j配置目标到mongodb
- Ubuntu安装MongoDB和PHP扩展