DBAtlas · 数据库运维图谱

10107 NotWritablePrimary: not master / not writable primary(不是 master / 不是可写的主节点)

MongoDB

含义

写入(或其他需要主节点的操作)被发送到了当前不是主节点的副本集成员。只有主节点接受写入,因此操作被拒绝。

原因

应用正在向从节点写入;在故障转移(选举)期间旧主节点变为从节点,而客户端仍连接着它;或驱动的读写偏好和拓扑信息已过期。连接字符串中缺少 replicaSet 参数是典型原因。

解决方法

为驱动配置所有副本集成员和副本集名称(在连接字符串中写明 replicaSet=... 和所有主机),使驱动能自动发现主节点并在故障转移时重新路由。使用默认的读写偏好,它会将写入路由到主节点。由于这是暂时性错误,在应用中启用可重试写入。用 rs.status() 确认哪个成员是 PRIMARY。

在 DBAtlas 中打开 →

同一数据库的其他条目