【问题标题】:How to setup primary DB for replica Mongo DB如何为副本 Mongodb 设置主数据库
【发布时间】:2020-07-23 02:36:28
【问题描述】:

我正在尝试运行 nodejs 应用程序。为此,我需要设置副本 mongodb。我不明白我应该在哪里做什么。我需要一步一步的解释,就像我的智商在室温附近。

所以这是 DB 的 ENV 变量

MAIN_DATABASE=mongodb://127.0.0.1:27017,localhost:27018/maindb?replicaSet=rs0

我正在运行这个命令并启动一个副本 mongodb

mongod --port 27021 --dbpath "/data" --replSet rs0

这是我收到的错误消息

-> no primary found in replicaset or invalid replica set name

我有 2 个 mongo db 的 IP 正在运行

62.210.**.**  mongo1
212.129.**.** mongo2

【问题讨论】:

  • 按照 MongoDB 文档创建副本集。
  • 我需要这2个数据库的数据库用户和密码吗?可以在我这边完成一个命令吗?我需要在这 2 个数据库上进行配置吗?
  • 副本集中没有“主数据库”之类的东西。一个副本集可以有1到50个节点。那么,你的副本集有多少个节点?这些节点中只有一个可以是主节点。要设置副本集意味着(i)启动所有节点,(ii)使用mongo连接到一个节点,以及(iii)启动副本集。我建议,停止所有@ 987654328@ 处理并按照我作为链接提供的教程进行操作。
  • 另外,请参阅Replication(一般来说,以及它的含义)。

标签: mongodb database-replication replicaset


【解决方案1】:

你只需要重启你的 Mongo (killall mongod 然后启动) 带有以下内容:

mongod --replSet "rs0" --bind_ip localhost,hostname|62.210.**.**,hostname1|62.210.**.**

另外,您还可以在配置文件中指定副本集名称和 IP 地址:

replication:
   replSetName: "rs0"
net:
   bindIp: localhost,<hostname(s)|ip address(es)>

要使用配置文件启动mongod,请使用--config 选项指定配置文件的路径:

mongod --config <path-to-config>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-17
    • 1970-01-01
    • 2021-05-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-10-03
    • 2013-10-22
    相关资源
    最近更新 更多