2011-10-14 37 views
0

我正在使用64位MongoDB,并且正在测试多个碎片。如果我在一台机器上保留多个碎片。它的工作正常,但如果我保留在不同的机器中的碎片,它在分片到第二碎片失败。我已经将第一个分片大小限制为10MB,一旦其达到第一个分片中的有限大小,它应该开始分片到第二个分片,但不会发生这种情况。相反,无法将第二个分片更新到第一个分片。以下是我的碎片细节。在我的环境中,最初我有两块碎片。第一个碎片在我的第一台机器上运行,与我的应用程序一起运行。第二个碎片在我的第二台机器上。 配置如下: - *)在我的两个碎片上,shard-server,configserver,mongos和我通过mongos连接mongo,如下所示./mongo hostname:27017/admin,我已经在第一个&秒使用分片键为数据库和集合级别启用分片并启用分片。 请让我知道如果我在配置的任何地方出错了。64位mongodb多个碎片问题

高级谢谢,

回答

1

您的文章可以使用一些编辑,这是非常难以阅读。

它看起来像你有2台机器。在每台计算机上您有:

  • mongod过程作为一个碎片
  • mongod过程作为配置
  • mongos过程
  • 您的应用程序的副本连接到localhost:27017/admin

请让我知道如果我在配置中的任何地方出错了。

这里有几个可能的问题。请检查以下内容:

  1. 您只能有1或3个配置进程。它看起来像你有2,这是行不通的。
  2. 当你连接到localhost:27017/admin你连接到mongosmongod?任何一个都可以在这些端口上运行。你能指定每个进程的端口来帮助澄清吗?您必须连接到mongos或分片不会发生。
  3. 请看看日志,它们通常有输出,指示服务器在做什么。如果没有发生“分裂”或“块”的指示,那么您的数据库可能配置不正确。

最好的办法是从顶端开始,每次测试一件。

+0

嗨@盖茨副总裁,感谢您宝贵的信息。我很遗憾,我的帖子有一些复杂的阅读。 – SampathKumar

+0

以下是我的端口详细信息: - sharserver - > 10001,configserver - > 20001,mongos - >连接到configserver端口:20001。运行在默认端口上的Mongos:27017 [未指定端口]。这些是我在每台三台机器上使用的端口详细信息。请让我知道如果我使用了错误的。再次感谢您的帮助。 – SampathKumar