作者:俏君woo_267 | 来源:互联网 | 2014-05-28 16:53
创建必要的文件目录mkdir-p/usr/local/mongo/shard/s0mkdir-p/usr/local/mongo/shard/s1mkdir-p/usr/local/mongo/shard/s2mkdir-p/usr/local/mongo/shard/logmongod--shardsvr--port
创建必要的文件目录
mkdir -p /usr/local/mongo/shard/s0
mkdir -p /usr/local/mongo/shard/s1
mkdir -p /usr/local/mongo/shard/s2
mkdir -p /usr/local/mongo/shard/log
mongod --shardsvr --port 20000
--dbpath=/usr/local/mongo/shard/s0 --fork
--logpath=/usr/local/mongo/shard/log/s0.log --directoryperdb
mongod --shardsvr --port 20001 --dbpath=/usr/local/mongo/shard/s1
--fork --logpath=/usr/local/mongo/shard/log/s1.log
--directoryperdb
mongod --shardsvr --port 20002 --dbpath=/usr/local/mongo/shard/s2
--fork --logpath=/usr/local/mongo/shard/log/s2.log
--directoryperdb
#Configure Config Server
mkdir -p /usr/local/mongo/shard/config
mongod --configsvr --port 30000
--dbpath=/usr/local/mongo/shard/config --fork
--logpath=/usr/local/mongo/shard/log/config.log
--directoryperdb
#Start Router Server
mongos --port 40000 --configdb localhost:30000 --fork
--logpath=/usr/local/mongo/shard/log/route.log
mongos> db.runCommand({addshard:"localhost:20000"})
{ "shardAdded" : "shard0000", "ok" : 1 }
mongos> db.runCommand({addshard:"localhost:20001"})
{ "shardAdded" : "shard0001", "ok" : 1 }
mongos> db.runCommand({enablesharding:"andylhz"})
{ "ok" : 1 }
mongos>
db.runCommand({shardcollection:"andylhz.users",key:{_id:1}})
{ "collectionsharded" : "andylhz.users", "ok" : 1 }
插入测试数据
:
for (var i = 500001; i <= 1000000; i++) db.users.insert({age:i,
name:"wangwenlong", addr:"Beijing",country:"China"})
mongos> db.users.stats()db.users.stats()
{
"sharded" : true,
"ns" : "andylhz.users",
"count" : 500000,
"numExtents" : 16,
"size" : 48000000,
"storageSize" : 80949248,
"totalIndexSize" : 16245712,
"indexSizes" : {
"_id_" :
16245712
},
"avgObjSize" : 96,
"nindexes" : 1,
"nchunks" : 5,
"shards" : {
"shard0000"
: {
"ns" : "andylhz.users",
"count" : 130899,
"size" : 12566304,
"avgObjSize" : 96,
"storageSize" : 22507520,
"numExtents" : 7,
"nindexes" : 1,
"lastExtentSize" : 11325440,
"paddingFactor" : 1,
"systemFlags" : 1,
"userFlags" : 0,
"totalIndexSize" : 4259696,
"indexSizes" : {
"_id_" :
4259696
},
"ok" : 1
},
"shard0001"
: {
"ns" : "andylhz.users",
"count" : 369101,
"size" : 35433696,
"avgObjSize" : 96,
"storageSize" : 58441728,
"numExtents" : 9,
"nindexes" : 1,
"lastExtentSize" : 20643840,
"paddingFactor" : 1,
"systemFlags" : 1,
"userFlags" : 0,
"totalIndexSize" : 11986016,
"indexSizes" : {
"_id_" :
11986016
},
"ok" : 1
}
},
"ok" : 1
}
mongos>
mongos> use admindb.runCommand({ listshards: 1
})db.runCommand({ listshards: 1 })
{
"shards" : [
{
"_id" : "shard0000",
"host" : "localhost:20000"
},
{
"_id" : "shard0001",
"host" : "localhost:20001"
}
],
"ok" : 1
}
mongos> db.runCommand({ isdbgrid:1 })db.runCommand({
isdbgrid:1 })
{ "isdbgrid" : 1, "hostname" : "mongo.andylhz.com", "ok" : 1 }
mongos> db.runCommand({ addshard:"localhost:20002" })
mongos> printShardingStatus()printShardingStatus()
--- Sharding Status ---
sharding version: { "_id" : 1, "version" : 3 }
shards:
{ "_id" : "shard0000",
"host" : "localhost:20000" }
{ "_id" : "shard0001",
"host" : "localhost:20001" }
{ "_id" : "shard0002",
"host" : "localhost:20002" }
databases:
{ "_id" : "admin",
"partitioned" : false, "primary" : "config" }
{ "_id" : "andylhz",
"partitioned" : true, "primary" : "shard0000" }
andylhz.users chunks:
shard0002
1
shard0000
2
shard0001
2
{ "_id" : { $minKey : 1 } } -->> { "_id"
: ObjectId("50b9b64ae2b156c230e8f96e") } on : shard0002
Timestamp(4000, 0)
{ "_id" : ObjectId("50b9b64ae2b156c230e8f96e")
} -->> { "_id" : ObjectId("50b9b64be2b156c230e91103") } on :
shard0000 Timestamp(4000, 1)
{ "_id" : ObjectId("50b9b64be2b156c230e91103")
} -->> { "_id" : ObjectId("50b9b65fe2b156c230ebc1d5") } on :
shard0001 Timestamp(3000, 1)
{ "_id" : ObjectId("50b9b65fe2b156c230ebc1d5")
} -->> { "_id" : ObjectId("50b9b673e2b156c230eeb2d0") } on :
shard0001 Timestamp(2000, 4)
{ "_id" : ObjectId("50b9b673e2b156c230eeb2d0")
} -->> { "_id" : { $maxKey : 1 } } on : shard0000
Timestamp(3000, 0)
mongos>
本文完