MongoDB 初始同步反复失败(Azure VM 上 Ubuntu 16.04 上的 Mongodb 3.2)

标签 mongodb azure ubuntu-server mongodb-replica-set

  • 我有一个单成员 mongod 实例 (Server1),它有一个非常大的数据库,包含 250 万个文档(每个文档都很大)和 4 个索引。
  • 然后我向此副本集添加了另一台计算机 (Server2)。 Server2 上的 Mongod 大约需要 5 个小时才能获取这个大数据库中的所有文档。
  • Server2 获取所有文档后,它开始制作二级索引。索引完成大约需要 3 小时。

    • 完成构建辅助索引后,它立即尝试连接到主索引,并发现套接字已过期并超时。
    • 收到超时错误后,它(Server2)只需删除所有数据库并再次开始初始同步。

    • 日志片段如下:

2016-05-25T11:50:36.053+0000 I -        [rsSync]   Index Build: 2211700/2215091 99%
2016-05-25T11:50:39.221+0000 I -        [rsSync]   Index Build: 2212000/2215091 99%
2016-05-25T11:50:43.300+0000 I -        [rsSync]   Index Build: 2212300/2215091 99%
2016-05-25T11:50:46.103+0000 I -        [rsSync]   Index Build: 2212500/2215091 99%
2016-05-25T11:50:49.068+0000 I -        [rsSync]   Index Build: 2212800/2215091 99%
2016-05-25T11:50:52.218+0000 I -        [rsSync]   Index Build: 2213600/2215091 99%
2016-05-25T11:50:55.439+0000 I -        [rsSync]   Index Build: 2214500/2215091 99%
2016-05-25T11:50:58.738+0000 I -        [rsSync]   Index Build: 2214700/2215091 99%
2016-05-25T11:51:13.223+0000 I -        [rsSync]   Index: (2/3) BTree Bottom Up Progress: 536600/2215091 24%
2016-05-25T11:51:23.285+0000 I -        [rsSync]   Index: (2/3) BTree Bottom Up Progress: 1984500/2215091 89%
2016-05-25T11:51:24.317+0000 I INDEX    [rsSync]   done building bottom layer, going to commit
2016-05-25T11:51:24.508+0000 I INDEX    [rsSync] build index done.  scanned 2215091 total records. 10491 secs
2016-05-25T11:51:25.082+0000 I NETWORK  [rsSync] Socket say send() errno:110 Connection timed out xx.xx.xx.xx:27017
2016-05-25T11:51:25.106+0000 E REPL     [rsSync] 9001 socket exception [SEND_ERROR] server [xx.xx.xx.xx:27017] 
2016-05-25T11:51:25.106+0000 E REPL     [rsSync] initial sync attempt failed, 9 attempts remaining
2016-05-25T11:51:30.106+0000 I REPL     [rsSync] initial sync pending
2016-05-25T11:51:30.433+0000 I REPL     [ReplicationExecutor] syncing from: xx.xx.xx.xx:27017
2016-05-25T11:51:30.563+0000 I REPL     [rsSync] initial sync drop all databases
2016-05-25T11:51:30.564+0000 I STORAGE  [rsSync] dropAllDatabasesExceptLocal 42
2016-05-25T11:51:31.925+0000 I JOURNAL  [rsSync] journalCleanup...
2016-05-25T11:51:31.925+0000 I JOURNAL  [rsSync] removeJournalFiles
2016-05-25T11:51:32.331+0000 I JOURNAL  [rsSync] journalCleanup...
2016-05-25T11:51:32.332+0000 I JOURNAL  [rsSync] removeJournalFiles
2016-05-25T11:51:32.489+0000 I JOURNAL  [rsSync] journalCleanup...
2016-05-25T11:51:32.489+0000 I JOURNAL  [rsSync] removeJournalFiles
  • 尝试同步此副本集非常非常令人沮丧。它不断地一遍又一遍地进行初始同步。非常感谢任何帮助。

最佳答案

也许您可以使用此方法作为解决方法,直到诊断出问题:

https://docs.mongodb.com/manual/tutorial/resync-replica-set-member/#replica-set-resync-by-copying

关于MongoDB 初始同步反复失败(Azure VM 上 Ubuntu 16.04 上的 Mongodb 3.2),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37437064/

相关文章:

python - MongoDB TTL 索引不会删除过期文档

javascript - mongoose remove 不会删除所有文档

asp.net-mvc - 程序集绑定(bind)重定向不起作用

java - 无法使用 bin/cassandra -f 启动 cassandra

Tomcat7 不显示其索引页

ruby-on-rails - MongoDB Rails3.2 数据库命令 'create' 失败

javascript - 更新 mongo 文档数组中单个子文档的计数

azure - DevOps 部署后 wwwroot 上的访问被拒绝

azure - 使用 Terraform 创建 Azure Spot 实例

azure - Ubuntu Server 22_04-lts-gen2 中的 gen2 是什么意思?