【问题标题】:MongoDB Compass "Topology Type: Unknown is not writable"MongoDB Compass“拓扑类型:未知不可写”
【发布时间】:2018-05-31 22:25:03
【问题描述】:

我已将 MongoDB 数据库配置为单节点副本集。我可以通过 api 访问它(向它写入数据),也可以从 shell 访问它:

rs0:PRIMARY> rs.status()
{
    "set" : "rs0",
    "date" : ISODate("2017-12-18T14:37:13.487Z"),
    "myState" : 1,
    "term" : NumberLong(1),
    "heartbeatIntervalMillis" : NumberLong(2000),
    "optimes" : {
            "lastCommittedOpTime" : {
                    "ts" : Timestamp(1513607826, 1),
                    "t" : NumberLong(1)
            },
            "readConcernMajorityOpTime" : {
                    "ts" : Timestamp(1513607826, 1),
                    "t" : NumberLong(1)
            },
            "appliedOpTime" : {
                    "ts" : Timestamp(1513607826, 1),
                    "t" : NumberLong(1)
            },
            "durableOpTime" : {
                    "ts" : Timestamp(1513607826, 1),
                    "t" : NumberLong(1)
            }
    },
    "members" : [
            {
                    "_id" : 0,
                    "name" : "srvlx02:27017",
                    "health" : 1,
                    "state" : 1,
                    "stateStr" : "PRIMARY",
                    "uptime" : 14633,
                    "optime" : {
                            "ts" : Timestamp(1513607826, 1),
                            "t" : NumberLong(1)
                    },
                    "optimeDate" : ISODate("2017-12-18T14:37:06Z"),
                    "electionTime" : Timestamp(1513593354, 2),
                    "electionDate" : ISODate("2017-12-18T10:35:54Z"),
                    "configVersion" : 1,
                    "self" : true
            }
    ],
    "ok" : 1,
    "operationTime" : Timestamp(1513607826, 1),
    "$clusterTime" : {
            "clusterTime" : Timestamp(1513607826, 1),
            "signature" : {
                    "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                    "keyId" : NumberLong(0)
            }
    }
}
rs0:PRIMARY> rs.conf()
{
    "_id" : "rs0",
    "version" : 1,
    "protocolVersion" : NumberLong(1),
    "members" : [
            {
                    "_id" : 0,
                    "host" : "srvlx02:27017",
                    "arbiterOnly" : false,
                    "buildIndexes" : true,
                    "hidden" : false,
                    "priority" : 1,
                    "tags" : {

                    },
                    "slaveDelay" : NumberLong(0),
                    "votes" : 1
            }
    ],
    "settings" : {
            "chainingAllowed" : true,
            "heartbeatIntervalMillis" : 2000,
            "heartbeatTimeoutSecs" : 10,
            "electionTimeoutMillis" : 10000,
            "catchUpTimeoutMillis" : -1,
            "catchUpTakeoverDelayMillis" : 30000,
            "getLastErrorModes" : {

            },
            "getLastErrorDefaults" : {
                    "w" : 1,
                    "wtimeout" : 0
            },
            "replicaSetId" : ObjectId("5a379a0abe6cad70a6b66c7c")
    }
}
rs0:PRIMARY>

但是,当我通过 Compass 连接到它时,它将拓扑显示为 UNKNOWN,并且不允许修改/删除集合/数据库。

可能是什么问题?为什么 Compass 无法确定拓扑?是单节点副本集不支持的特例吗?

感谢您的任何提示!

MongoDB 版本:3.6.0

MongoDB shell version v3.6.0
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.0

指南针版本:1.11.1 社区版

【问题讨论】:

  • 你找到解决办法了吗?
  • 不,很遗憾... :( 停止在副本集模式下使用 MongoDB。

标签: mongodb mongodb-compass


【解决方案1】:

如果其他人遇到同样的问题,我刚刚在 MongoDB Jira 上发现了一个关于同样问题的错误报告:https://jira.mongodb.org/browse/COMPASS-3264

解决方案是将“副本集名称”字段留空,它会正常工作:)

【讨论】:

    【解决方案2】:

    我今天遇到了这个问题,并将其追溯到我的 MongoDB 服务器上的防火墙。我已经为其中一个副本集实例打开了端口,但不是全部。我认为您正在运行 compass 的机器需要访问副本集中的所有实例。

    【讨论】:

      【解决方案3】:

      我今天遇到了这个问题,因为我的 IP 地址与我最初添加到 Atlas 上的 IP 白名单中的 IP 地址不同。我必须在我的 Atlas IP 白名单设置中选择“允许从任何地方访问”选项才能让我的指南针再次工作。

      【讨论】:

        【解决方案4】:

        我认为发生这种情况是因为您的公共 IP 已更改,并且当您将 mongodb atlas 与 compass 连接时会发生这种情况, enter image description here 尝试添加另一个 IP。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2023-01-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-07-19
          • 2018-08-08
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多