MongoDB是一种流行的非关系型数据库,它具有高性能、高扩展性和高可用性等特点。在实际应用中,我们通常需要搭建MongoDB的主从集群,以实现数据的备份、负载均衡和故障转移等功能。本文将介绍如何搭建和配置MongoDB的主从集群。
首先,我们需要准备至少两台服务器,分别作为主节点和从节点。假设主节点的IP地址是192.168.1.1,从节点的IP地址是192.168.1.2。我们需要在两台服务器上安装MongoDB,并启动mongod服务。我们可以使用以下命令来安装MongoDB:
然后,我们需要修改两台服务器上的mongod配置文件,以启用主从复制功能。我们可以使用以下命令来编辑配置文件:
在配置文件中,我们需要添加或修改以下内容:
在主节点上,设置replSet参数为rs0,表示复制集的名称
在从节点上,设置replSet参数为rs0,表示复制集的名称
在从节点上,设置slave参数为true,表示该节点是从节点
在从节点上,设置source参数为主节点的IP地址和端口号,表示该节点从哪里复制数据
保存并退出配置文件后,我们需要重启两台服务器上的mongod服务,以使配置生效。我们可以使用以下命令来重启服务:
接下来,我们需要在主节点上初始化复制集,并添加从节点到复制集中。我们可以使用以下命令来连接到主节点的mongo shell:
在mongo shell中,我们可以使用以下命令来初始化复制集:
这个命令会创建一个默认的复制集配置对象,并将当前节点作为复制集的第一个成员。我们可以使用以下命令来查看复制集的状态:
这个命令会显示复制集的名称、成员、角色、状态等信息。我们可以看到当前节点已经成为了复制集的主节点(primary)。
然后,我们可以使用以下命令来添加从节点到复制集中:
这个命令会将指定的节点作为复制集的第二个成员,并自动分配一个投票权重(默认为1)。我们可以再次使用rs.status()命令来查看复制集的状态。我们可以看到从节点已经加入了复制集,并且成为了副本节点(secondary)。
至此,我们已经完成了MongoDB的主从集群的搭建和配置。我们可以在主节点上进行数据的读写操作,在从节点上进行数据的读操作。如果主节点出现故障,从节点会自动选举出一个新的主节点,并继续提供服务。