MST

星途 面试题库

面试题:MongoDB分片中如何修改单个分片服务器的配置

在MongoDB分片集群环境下,假设你要修改某一个分片服务器的副本集成员配置(比如添加一个新的从节点),请描述具体的操作步骤以及可能涉及到的命令。
18.8万 热度难度
数据库MongoDB

知识考点

AI 面试

面试题答案

一键面试
  1. 连接到MongoDB分片集群的mongos实例
    • 使用mongo命令连接到mongos,例如mongo <mongos_host>:<mongos_port>
  2. 确认要修改的分片
    • 使用sh.status()命令查看当前分片集群状态,确定要修改副本集配置的分片名称。
  3. 连接到目标分片的主节点
    • 找到目标分片副本集主节点的地址(可以从sh.status()输出中获取),然后使用mongo <primary_host>:<primary_port>连接到主节点。
  4. 添加新的从节点(操作在副本集主节点上执行)
    • 使用rs.add("<new_secondary_host>:<new_secondary_port>")命令添加新的从节点。例如,若新从节点地址为192.168.1.100:27018,则执行rs.add("192.168.1.100:27018")
  5. 验证新节点是否成功加入
    • 在副本集主节点上使用rs.status()命令查看副本集状态,确认新节点已成功加入且状态正常。
  6. 回到mongos实例
    • 重新连接到mongos实例(如果之前连接已断开),使用mongo <mongos_host>:<mongos_port>
  7. 再次检查分片集群状态
    • 执行sh.status()命令,确保整个分片集群状态正常,且新节点加入未对集群造成异常影响。

注意事项:

  • 在执行上述操作前,建议备份相关数据,以防操作过程中出现意外数据丢失情况。
  • 操作过程中如果遇到网络问题或权限问题,可能导致操作失败,需要根据具体报错信息排查解决。