0

原本我只有三个分片,且分片内是有数据的。后来我觉得数据量太大,决定添加分片来解决。

于是我添加了shard4这个分片,下面是添加后的结果。
mongos> db.runCommand( { listShards : 1 } )
{
“shards” : [
{
“_id” : “shard1”,
“host” : “shard1/172.16.130.11:27017,172.16.130.11:27027”
},
{
“_id” : “shard2”,
“host” : “shard2/172.16.130.11:27018,172.16.130.11:27028”
},
{
“_id” : “shard3”,
“host” : “shard3/172.16.130.11:27019,172.16.130.11:27029”
},
{
“_id” : “shard4”,
“host” : “shard4/172.16.130.11:27016,172.16.130.11:27026”
}
],
“ok” : 1
}

集群中状态:
mongos> sh.status()
— Sharding Status —
sharding version: {
“_id” : 1,
“minCompatibleVersion” : 5,
“currentVersion” : 6,
“clusterId” : ObjectId(“55b73b1ab215ffec0547d54b”)
}
shards:
{ “_id” : “shard1”, “host” : “shard1/172.16.130.11:27017,172.16.130.11:27027” }
{ “_id” : “shard2”, “host” : “shard2/172.16.130.11:27018,172.16.130.11:27028” }
{ “_id” : “shard3”, “host” : “shard3/172.16.130.11:27019,172.16.130.11:27029” }
{ “_id” : “shard4”, “host” : “shard4/172.16.130.11:27016,172.16.130.11:27026” }
balancer:
Currently enabled: yes
Currently running: yes

以及数据库的分片状态:
mongos> use config
switched to db config
mongos> db.databases.find({“partitioned”: true})
{ “_id” : “appserver”, “partitioned” : true, “primary” : “shard1” }
mongos> db.databases.find()
{ “_id” : “admin”, “partitioned” : false, “primary” : “config” }
{ “_id” : “appserver”, “partitioned” : true, “primary” : “shard1” }
{ “_id” : “test”, “partitioned” : false, “primary” : “shard2” }

但是我新添加的分片里面并没有得到任何数据:
shard4:PRIMARY> show dbs
local 0.000GB
shard4:PRIMARY> show dbs
local 0.000GB
shard4:PRIMARY>

请问这是什么情况呢?希望尽快帮我解答下。