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

本文涉及的产品
云数据库 MongoDB,通用型 2核4GB
简介: 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
目录
相关文章
|
17天前
|
NoSQL 网络协议 Unix
第6期 MongoDB配置启动方式
第6期 MongoDB配置启动方式
302 0
|
7月前
|
存储 NoSQL MongoDB
mongodb 存引擎及配置
mongodb 存引擎及配置
|
7月前
|
NoSQL 数据可视化 MongoDB
Windows MongoDB的安装及配置图文说明(非常详细)
Windows MongoDB的安装及配置图文说明(非常详细)
376 0
|
17天前
|
存储 JSON 分布式计算
MongoDB【部署 01】mongodb最新版本6.0.5安装部署配置使用及mongodb-shell1.8.0安装使用(云盘分享安装文件)
MongoDB【部署 01】mongodb最新版本6.0.5安装部署配置使用及mongodb-shell1.8.0安装使用(云盘分享安装文件)
204 0
|
7月前
|
NoSQL Linux MongoDB
MongoDB配置用户名和密码
MongoDB配置用户名和密码
510 0
|
17天前
|
监控 NoSQL 安全
【MongoDB 专栏】MongoDB 的复制集:高可用性配置
【5月更文挑战第10天】MongoDB的复制集是实现数据高可用性的重要机制,由主节点和次节点构成,主节点处理写操作,次节点同步数据确保一致。在主节点故障时,次节点自动提升接替,保证服务不间断。通过复制集,可实现数据保护、持续服务,适用于关键业务系统和数据备份。配置时需关注网络稳定性、节点性能和数据一致性。案例显示,复制集能有效保障服务高可用,防止数据丢失和业务中断,是现代数据库管理的关键工具。在数据驱动的世界,复制集为高可用性提供了坚实保障。
【MongoDB 专栏】MongoDB 的复制集:高可用性配置
|
17天前
|
DataWorks NoSQL 关系型数据库
DataWorks操作报错合集之在使用 DataWorks 进行 MongoDB 同步时遇到了连通性测试失败,实例配置和 MongoDB 白名单配置均正确,且同 VPC 下 MySQL 可以成功连接并同步,但 MongoDB 却无法完成同样的操作如何解决
DataWorks是阿里云提供的一站式大数据开发与治理平台,支持数据集成、数据开发、数据服务、数据质量管理、数据安全管理等全流程数据处理。在使用DataWorks过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
|
17天前
|
NoSQL Java MongoDB
mongoDB动态配置文档名称
mongoDB动态配置文档名称
62 0
|
17天前
|
存储 缓存 NoSQL
|
17天前
|
监控 NoSQL MongoDB
第5期 MongoDB配置用户名密码认证登录
第5期 MongoDB配置用户名密码认证登录
586 0