MongoDB详解(六)——MongoDB主从同步配置

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: MongoDB详解(六)——MongoDB主从同步配置

今天继续给大家介绍Linux运维相关知识,本文主要内容是MongoDB主从同步配置。

一、环境准备
今天,我们来配置一下MongoDB的主从架构,我们使用两台设备,分别作为MongoDB的主库和从库,设备及其IP地址如下所示:
MongoDB主库:192.168.136.11
MongoDB从库:192.168.136.12
我们在配置前,需要进行非常重要的预准备工作,即关闭防火墙以及在主从设备上同步当前时间。否则,任何一个地方出现问题,都有可能导致我们实战失败。
关于MongoDB数据库的安装已经在上文MongoDB详解(四)——MongoDB数据库安装中介绍过,在这里就不过多赘述了。本文在两台设备上都已经成功安装MongoDB数据库的基础上进行。

二、主从数据库配置
接下来,我们就正式开始MongoDB主从数据库的配置。
要开启MongoDB数据库的主从同步功能,我们就不能按照MongoDB默认的方式来进行启动,我们必须要先创建MongoDB数据库的配置文件,在MongoDB数据库启动时,使其按照配置文件的设定来进行启动。
我们创建MongoDB的配置文件为/usr/local/mongodb/mongod.conf,并且在文件中写入如下内容:

bind_ip=0.0.0.0
replSet=pzz
1
2
在上述配置中,bind_ip表明了MongoDB数据库启动后监听的IP地址,在默认情况下,MongoDB数据库会只监听127.0.0.1,replSet参数指定了MongoDB数据库的主从同步集群名称。配置完成后的文件如下所示:

在这里,我们在主库和从库上配置完全相同的配置文件,设置MongoDB数据库按照配置文件启动需要在mongod命令后面加上-f参数来指定启动文件,命令如下所示:

mongod -f /usr/local/mongodb/mongod.conf
1
我们在MongoDB的主从数据库上同时执行上述命令,使得MongoDB数据库启动。
在MongoDB数据库启动后,我们先登录到主库上,执行命令:

rs.status()
1
查看当前主从同步集群状态如下所示:

之后,我们先定义一个有关于主从同步的变量,执行命令:

var config={_id:"pzz",members:[{_id:0,host:"192.168.136.11:27017"},{_id:1,host:"192.168.136.12:27017"}]}
1
在上述配置中,我们定义了名为config的变量,并且指定了MongoDB主从架构中的主库和从库IP和端口。接下来,我们按照该变量的配置,初始化MongoDB的主从配置,执行命令:

rs.initiate(config)
1
该命令执行结果如下所示:

此时,我们再在主库上执行命令:

rs.status()
1
则该命令执行结果如下所示:

从上图中可以看出,我们的MongoDB主从同步成功!并且在数据库主从同步成功后,主库前面会出现PRIMARY的提示符。
接下来,我们在从库上,执行命令:

rs.status()
1
该命令执行结果如下所示:

从上图中可以看出,在MongoDB数据库主从同步成功后,从库上出现SECONDARY的提示符。

三、效果检验
最后,我们来检验一下我们的MongoDB主从同步的结果。
在主库上,我们来创建数据,过程如下所示:

接下来,我们来到从库上,来查看我们在主库上创建的结果是否出现在了从库上。
注意,如果我们执行执行查看命令,那么结果如下所示:

从上图可以看出,我们在从库上查询的操作失败,这是因为在配置了MongoDB的主从同步后,在MongoDB的从库上,没有读和写的权限,因此我们无法查看数据。
我们可以执行命令:

db.getMongo().setSlaveOk()
1
来开启MongoDB数据库的独权限,然后再次查看MongoDB从库上的内容,结果如下所示:

从上图中可以看出,我们在MongoDB数据上的数据,已经自动同步给了从库,我们的MongoDB数据库主从同步配置成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/weixin_40228200/article/details/125242592

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
目录
相关文章
|
3月前
|
运维 监控 NoSQL
【MongoDB 复制集秘籍】Secondary 同步慢怎么办?深度解析与实战指南,让你的数据库飞速同步!
【8月更文挑战第24天】本文通过一个具体案例探讨了MongoDB复制集中Secondary成员同步缓慢的问题。现象表现为数据延迟增加,影响业务运行。经分析,可能的原因包括硬件资源不足、网络状况不佳、复制日志错误等。解决策略涵盖优化硬件(如增加内存、升级CPU)、调整网络配置以减少延迟以及优化MongoDB配置(例如调整`oplogSize`、启用压缩)。通过这些方法可有效提升同步效率,保证系统的稳定性和性能。
91 4
|
3月前
|
C# 开发者 Windows
全面指南:WPF无障碍设计从入门到精通——让每一个用户都能无障碍地享受你的应用,从自动化属性到焦点导航的最佳实践
【8月更文挑战第31天】为了确保Windows Presentation Foundation (WPF) 应用程序对所有用户都具备无障碍性,开发者需关注无障碍设计原则。这不仅是法律要求,更是社会责任,旨在让技术更人性化,惠及包括视障、听障及行动受限等用户群体。
81 0
|
4月前
|
分布式计算 DataWorks NoSQL
DataWorks产品使用合集之怎么离线同步MongoDB的增量数据
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
4月前
|
自然语言处理 运维 NoSQL
MongoDB集群同步
实现 MongoDB Cluster-to-Cluster 即集群同步的工具是:mongosync 详情可参考如下官方文档: https://www.mongodb.com/zh-cn/docs/cluster-to-cluster-sync/current/quickstart/ 以上这个地址的文档一看就是机器翻译的,可能有不恰当的地方,但基本可参考使用。 以下是本次在某项目地配置集群同步的简要步骤,可参考使用。
86 6
|
3月前
|
NoSQL MongoDB Windows
MongoDB 读写分离——Windows MongoDB 副本集配置
MongoDB 读写分离——Windows MongoDB 副本集配置
64 0
|
5月前
|
NoSQL 测试技术 MongoDB
使用同步和异步方式更新插入MongoDB数据的性能对比
在这篇文章中,我将探讨如何使用同步和异步方式插入数据到MongoDB,并对两种方式的性能进行对比。并将通过Python中的 pymongo 和 motor 库分别实现同步和异步的数据插入,并进行测试和分析。
|
5月前
|
分布式计算 DataWorks NoSQL
DataWorks操作报错合集之从MongoDB同步数据到MaxCompute(ODPS)时,出现报错,该怎么解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
DataWorks操作报错合集之从MongoDB同步数据到MaxCompute(ODPS)时,出现报错,该怎么解决
|
4月前
|
消息中间件 NoSQL 中间件
MongoDB多数据中心的主从结构
【7月更文挑战第3天】
42 0
|
4月前
|
消息中间件 NoSQL 中间件
MongoDB主从结构、仲裁节点
【7月更文挑战第2天】
61 0
|
4月前
|
存储 NoSQL 关系型数据库
MongoDB的配置服务器和复制机制
【7月更文挑战第2天】MongoDB配置服务器存储分片和权限元数据,支持在主节点故障时保持读服务。关键组件,性能影响显著。复制集包含Primary和Secondary,通过oplog实现数据同步,类似MySQL binlog。oplog的幂等性可能导致大量set操作,且大小受限,可能导致从节点需全量同步。读写分离提升效率,主从切换确保高可用。
51 0