从 mongos 添加新分片时出错 shell
Error adding new shard from mongos shell
我正在学习在 mongoDB 中设置分片,我计划有 1 个 configsvr
、1 个 shardsvr
和 1 个 mongos
我使用
启动了 mongod
s
mongod --configsvr --replSet foo --dbpath e:\mongodb\configsvr --port 27019
mongod --shardsvr --replSet foo --dbpath e:\mongodb\shardsvr --port 27018
我还使用 mongo --port 27019
和 mongo --port 27018
连接到每个 mongod
并在每个
上执行 rs.initiate()
我使用
开始了mongos
mongos --configdb foo/MY-PC:27019
我终于使用 mongo
连接到 mongos
使用 sh.addShard('foo/MY-PC:27018')
后出现错误
错误
{
"ok" : 0,
"errmsg" : "Cannot add foo/MY-PC:27018 as a shard since it is part of a config server replica set",
"code" : 96
}
请帮忙解决这个错误
谢谢大家
您将 foo/MY-PC 设置为另一个 mongo 服务器的副本!它的数据将是该服务器的副本!
Replication 是 copying 一个服务器的数据到另一个服务器,所以如果它发生问题,你不会丢失你的数据!而 Sharding 是 将您的数据分解 以便您可以通过同时访问不同的服务器来加快数据访问速度。
因此,如果您将数据分成两部分 Data-A 和 Data-B,并且您的主副本服务器保留 Data-A,那么 foo/MY-PC 将仅保留相同的部分(Data-A)!
我正在学习在 mongoDB 中设置分片,我计划有 1 个 configsvr
、1 个 shardsvr
和 1 个 mongos
我使用
启动了mongod
s
mongod --configsvr --replSet foo --dbpath e:\mongodb\configsvr --port 27019
mongod --shardsvr --replSet foo --dbpath e:\mongodb\shardsvr --port 27018
我还使用 mongo --port 27019
和 mongo --port 27018
连接到每个 mongod
并在每个
rs.initiate()
我使用
开始了mongos
mongos --configdb foo/MY-PC:27019
我终于使用 mongo
连接到 mongos
使用 sh.addShard('foo/MY-PC:27018')
错误
{
"ok" : 0,
"errmsg" : "Cannot add foo/MY-PC:27018 as a shard since it is part of a config server replica set",
"code" : 96
}
请帮忙解决这个错误
谢谢大家
您将 foo/MY-PC 设置为另一个 mongo 服务器的副本!它的数据将是该服务器的副本!
Replication 是 copying 一个服务器的数据到另一个服务器,所以如果它发生问题,你不会丢失你的数据!而 Sharding 是 将您的数据分解 以便您可以通过同时访问不同的服务器来加快数据访问速度。
因此,如果您将数据分成两部分 Data-A 和 Data-B,并且您的主副本服务器保留 Data-A,那么 foo/MY-PC 将仅保留相同的部分(Data-A)!