要在1主2从的MongoDB集群中增加一个新的从节点,你需要按照以下步骤操作:
步骤1:准备新节点
确保你的新节点已经安装了MongoDB,并且配置文件mongod.conf
已经设置好。你需要确保新节点的配置文件中的bindIp
或bindIpAll
选项包含了你想要连接到的IP地址。此外,还需要确保新节点的端口与现有的MongoDB集群端口一致
最好是直接在其他已有节点上将MongoDB的文件和配置全都scp过去,这样可以保证主从节点版本配置、端口的一致性;
步骤2:启动新节点
启动新节点的MongoDB服务。你可以使用以下命令行启动MongoDB服务:
/usr/local/services/mongodb/bin/mongod -f /home/middle/mongodb/conf/mongo.cnf
请确保路径和文件名与你实际的MongoDB安装和配置文件位置相匹配3。
步骤3:连接到主节点
接下来,你需要以管理员权限登录到主节点的MongoDB实例。你可以使用以下命令行:
/usr/local/services/mongodb/bin/mongo localhost:29001
请确保端口号与你的实际MongoDB主节点端口一致3。
步骤4:添加新节点
现在,你可以使用MongoDB的rs.add()
命令来添加新的从节点。你需要提供新节点的IP地址和端口。例如:
use admin
db.auth("yourUsername", "yourPassword");
rs.add({ host: "newNodeIP:port" });
请替换newNodeIP
和port
为你新节点的IP地址和端口,而yourUsername
和yourPassword
则替换为你的实际用户名和密码3。
说明:
Mongo新增从库,不需要像Mysql一样手动转存历史数据;而是像ClickHouse一样,挂载后系统会自动同步历史数据;
挂载成功后,rs.status()可以查看主从同步状态,如果:"stateStr" : "STARTUP2",表示正在初始化,从主库同步数据的过程;等"stateStr" 状态变为 "SECONDARY"即表示同步完毕了
步骤5:验证新节点状态
最后,你可以使用rs.status()
命令来检查新节点的状态,确认它已经被正确地添加到了集群中3。
以上步骤完成后,你应该有一个包含三个从节点的MongoDB集群,其中一个是从节点,另外两个是新添加的从节点。如果你希望新节点成为主节点,你需要先移除现有的主节点,然后再添加新节点。但请注意,这可能会导致数据丢失,因此请谨慎操作。