我正在尝试启动一个至少有一个副本集的 MongoDB 集群localhost
。为简单起见,一个未分片的集群就可以了。我正在关注此文档Deploy a Replica Set for Testing and Development
这个文档让我有点困惑。有没有简单直接的方法?
我正在尝试启动一个至少有一个副本集的 MongoDB 集群localhost
。为简单起见,一个未分片的集群就可以了。我正在关注此文档Deploy a Replica Set for Testing and Development
这个文档让我有点困惑。有没有简单直接的方法?
在这里,我正在使用1 PRIMARY node
和2 SECONDARY nodes
(副本)创建一个 mongo 集群(未分片)。PRIMARY 节点在默认端口 27017 上运行,其他 2 个副本节点在端口 27018 和 27019 上运行。
首先,为所有 3 个实例创建一个数据库路径。对我来说,它/data/db/27017
适用于 PRIMARY 和/data/db/27018
副本/data/db/27019
。确保您必须对这些目录进行写访问。
现在按照以下步骤...
1- start 3 mongo instances
./mongod --port 27017 --dbpath /data/db/27017 --replSet rs0 &
./mongod --port 27018 --dbpath /data/db/27018 --replSet rs0 &
./mongod --port 27019 --dbpath /data/db/27019 --replSet rs0 &
2- login to mongo cli with PRIMARY port and initiate replicas
./mongo 127.0.0.1:27017/test //cli
rs.initiate() // replica set init
rs.conf() // replica set config
rs.status() // replica set status
rs.add("localhost:27018") //Add members to Replica Set
rs.add("localhost:27019") //Add members to Replica Set
3- check cluster info
db.isMaster()
rs.slaveOk() // to perform cli commands on replica