位置: 编程技术 - 正文

Mongodb 副本集搭建问题总结及解决办法(mongodb副本集群)

编辑:rootadmin

推荐整理分享Mongodb 副本集搭建问题总结及解决办法(mongodb副本集群),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mongodb有哪些是副本集成员,mongodb副本集搭建一台电脑,mongodb副本集搭建invalid command,mongodb副本集中的三种角色,mongodb副本集搭建,mongodb副本集搭建invalid command,mongodb副本集搭建Win11,mongodb副本集搭建要注意什么,内容如对您有帮助,希望把文章链接给更多的朋友!

Mongodb 副本集搭建问题总结及解决办法

Mongodb数据库的副本集是由多台服务器组成,基中一台是主节点,其它为从节点,如果主节点宕机就自动切换到任意一个从节点。如果以前的主节点修复完成和正常运行就自动变成从节点,从节点不能查询数据。也可以在一台服务器装多个Mongodb端口不一样。

在我以往的认知中,一个系统一旦正式上线,多半不会轻易的迁移服务器,尤其是那种涉及到多个关联应用,涉及到多台硬件服务器的系统,因为这种迁移将是牵一发而动全身的。

但是,却仍然有这种情况存在,就如我这几天主要负责的事,就是一个系统的全部服务器迁移中的部分机器迁移,还有一部分由别人负责。

这个系统涉及到flume数据采集,storm数据分析,rabbitmq消息分发,ehcache缓存提升系统性能,MongoDB副本集存储数据,tomcat管理系统应用等,架构基本如下:

而这里我主要负责的是rabbitmq、tomcat、ehcache、mongodb,这里边tomcat、ehcache的安装和配置都比较简单,只是rabbitmq需要依赖于erlang。而erlang又需要依赖一些其他的东西,这些东西需要root权限执行yum,而我们没有root权限,于是稍微花了一点点功夫。

除此之外,mongodb副本集的再次搭建也稍微遇到了一点点问题,不过好在一切还是按照预料中发展的,以前没遇到过的问题也通过经验猜想完美解决。

之所以mongodb副本集搭建会遇到一些问题,大部分原因是因为这次并非亲自动手,而是由所带的新人操作。 首先,按照我给的文档他一步步的操作下去,结果在端口上,不知道是因为习惯还是因为什么,他所设置的端口并不是我们要求的端口。

那么这时候当我要求他改成要求的端口时,他有些茫然,不知道是应该把所有配置删了重配,还是要怎样。

由于时间关系,于是我给他提供了一个方案,就是直接使用配置优先级的方式改掉端口。之前我写过的副本集搭建的文档中应该有说过优先级怎么改,大体上是下边三步:

那么根据这个,我们设想的改端口应该是下边这样(下边ip和端口只是随便假设的,生产环境自然不能随便透漏):

但是结果呢,在第三步的时候抛出异常,遗憾的是当时只为了解决问题而没有截图,忘记具体是什么异常了,但大体意思是说这个端口的成员不存在。 于是,我又给他提供了第二个方案,那就是先把三个成员中非主服务的任意一个从成员中删除:

Mongodb 副本集搭建问题总结及解决办法(mongodb副本集群)

然后把这台机的端口改为我们需要的,之后再使用增加成员的命令添加进来:

然后就这样操作三次后,三台服务器的端口都成功修改成要求的端口。

这个过程中,当修改到主服务的时候,因为一开始设置了最高优先级,因此需要把另外一台先设置成更高的优先级操作。 问题就这样解决了,只不过事后我又想了想,似乎这种方案并非是最优最简洁的,因为当时没有细想第一种方案中那个问题的原因,后来一想,多半是因为那台机还是原端口没有被重启。

如果我们先把非主服务机器的端口都改好重启,那么再次用第一种方案进行应该也是可行的,而且还会比第二种方案简单,有机会了一定要试试。

本以为这样就可以了,然后没想到的是,当我们都迁移完成后,被告知那些机器都是测试服务网段的,要改成生产网段。 于是乎,所有的机器ip全部变了,以至于我们的mongodb副本集又要重新配置。

但是这一次比较麻烦的是,之前那次改端口是因为我至少可以保证有两台机还是正常运行的,可以操作rs命令,但是这一次ip一变,我三台机都无法正常成为主服务,以至于rs命令失效。

几番折腾,始终没有想出好的方案,于是只好把data目录下的内容尽数删除,然后真正的重新配置一遍。 然而,在这位新手的操作下,配置的过程中,把本该是如下的命令:

弄成了这样:

也就是说这里他虽然给config赋值了,但是再加载的时候竟然没有使用,这也怪了忘了告诉他之前发现的一个问题。

通常我们在window系统上操作Linux上的应用,都会使用crt或者putty这些工具,这两个工具各有优劣,而我发现当我们进入mongo shell中操作时,这两个工具是有区别的,使用putty就可以回退,而crt就不能再mongodb shell中回退。

因此当他敲完rs.initiate(),想要回到括号里加上config时,已经没了回头路,只能硬着头皮回车。

而这时候,rs.initiate()只能执行一次,接下来和我文档中的操作不一样了,又该怎么办呢?

经过上一个问题,这个问题貌似就很好解决的,怎么办呢,我觉得还是可以使用rs.add和修改配置的方式解决,然后把这个想法告诉他,他照此操作后,果然一次搞定!

好了,这次的两个问题基本就这样解决了,不知其他朋友们,是否对这种情况还有更好的解决方案?欢迎留言解惑。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍 Mongodb3.0.5副本集搭建及spring和java连接副本集配置详细介绍一、基本环境:mongdb3.0.5数据库spring-data-MongoDB-1.7.2.jarmongo-Java-driver-3.0.2.jarLinux-redhat6.3tomcat7二

CentOS 7下用yum快速安装MongoDB的方法教程 前言MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。MongoDB是深受广大开源爱好者支持和

MongoDB中游标的深入学习 前言MongoDB中的游标与关系型数据库中的游标在功能上大同小异。游标相当于C语言的指针,可以定位到某条记录,在MongoDB中,则是文档。因此在mongoDB中

标签: mongodb副本集群

本文链接地址:https://www.jiuchutong.com/biancheng/312599.html 转载请保留说明!

上一篇:【MongoDB for Java】Java操作MongoDB数据库

下一篇:Mongodb3.0.5 副本集搭建及spring和java连接副本集配置详细介绍(mongodb最新版本)

  • 注销银行帐户需要什么
  • 增值税科目及会计处理
  • 利息可以抵税是什么意思
  • 报销单据粘贴单图片
  • 付钱给对方会计分录
  • 股东借钱给公司,公司经营不善倒闭!借款公司要还不
  • 金税盘的发票怎么作废
  • 未分配利润期末余额在借方还是贷方
  • 销售收入计入其他应付款
  • 计提存货跌价准备是递延所得税资产吗
  • 保险公司赔款可以用子女的二类卡吗
  • 预付了订金收到发票怎么做分录?
  • 代扣代缴增值税纳税义务发生时间
  • 没收土地竞买保证金政策法律
  • 原始凭证审核的内容
  • 结转已到期未兑付怎么办
  • 营改增后小规模都是三个点吗
  • 我是小规模企业客户要求开专票不开投诉
  • 什么是简易征收办法征收增值税
  • 总包分包差额征税是什么意思
  • 进项5万出项6万,需交多少税
  • 发票查重
  • 用一般户发工资会怎么样
  • 建账时的库存怎么做账
  • 微软正式宣布收购动视暴雪
  • macOS Big Sur 11.2 RC 3(版本号20D64)预览版正式发布(附更新内容)
  • PHP:pg_free_result()的用法_PostgreSQL函数
  • 涉税专业服务机构是什么
  • 怎么用html做一个收藏夹
  • yii2框架的优缺点
  • 污水处理厂能享受补助吗
  • thinkphp import
  • 非盈利组织固定资产没入帐 怎么调账
  • vue3setup语法糖如何定义realtive数据
  • echarts series name
  • 2021前端面试大全
  • 我的年终总结怎么写
  • js-cookie vue
  • 购进原材料款项未付应编制什么凭证
  • JavaWeb之Servlet
  • 实行营改增后,税金计算应注意哪些问题
  • 未开票金额怎么填写
  • 股东借款转增资本公积要验资吗
  • 国内源码平台
  • 教育行业税收优势分析
  • 拍卖车牌收入需要缴纳什么税
  • 经营出租固定资产折旧费计入什么科目
  • 所得税费用的账目处理
  • 合并报表存货抵消
  • 装修费应该按几折算
  • 补交以前年度的房产税会计分录
  • 小规模纳税人手工帐怎么做
  • 工程结算与开票的关系
  • 定期存款怎么做
  • 银行存款实际余额不足
  • 股东退股如何清算表格
  • 非营利医疗机构有哪些
  • 应付账款核算的项目
  • mysql 判断
  • mysql存储过程的语句块以什么开始以什么结束
  • hosts文件不起作用
  • 怎么设置win7密码
  • mac开机声音怎么取消
  • Fedora Core 4.0 安装图解
  • freebsd使用手册
  • system idle process是什么进程(CPU的空闲率)
  • ubuntu怎么用linux
  • mac截图后怎么编辑
  • 雨林木风Windows10
  • win8.1一直开机,无法进入主界面
  • mozilla是啥
  • 如何下载安装windows10
  • windows8介绍
  • perl字符串长度函数
  • cocos2dx4.0入门
  • sql服务3417
  • python tornado框架
  • 平原新区郑州外国语学校
  • 房地产的土地增值税怎么交
  • 怎么判断增值税能不能抵扣
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设