参考
http://www.javabloger.com/article/mongodb-cluster.html
我们实验有shard1,shard2,configserver,mongosRoute
Shard1启动脚本
mkdir db/shard1
bin/mongod --shardsvr --dbpath db/shard1 --port 9000 --httpinterface --bind_ip 0.0.0.0 --fork --logpath=log/shard1.log --rest
Shard2启动脚本
mkdir db/shard2
bin/mongod --shardsvr --dbpath db/shard2 --port 9001 --httpinterface --bind_ip 0.0.0.0 --fork --logpath=log/shard2.log --rest
configServer启动脚本
mkdir db/config
bin/mongod --configsvr --dbpath db/config --port 7001 --rest --bind_ip 0.0.0.0 --fork --logpath=log/config.log --httpinterface
mongoDB路由器启动脚本。
mkdir db/route
./bin/mongos --port 7000 --configdb 192.168.1.246:7001 --bind_ip 0.0.0.0 --fork --logpath=log/route.log
配置自动分片(Auto-sharding)
D:\Program Files\mongodb>bin\mongo 192.168.1.246:7000
MongoDB shell version: 2.0.0
connecting to: test
mongos> use admin
switched to db admin
mongos> db.runCommand({addshard:"192.168.1.246:9000"});
{ "shardAdded" : "shard0000", "ok" : 1 }
mongos> db.runCommand({addshard:"192.168.1.246:9000"});
{ "shardAdded" : "shard0001", "ok" : 1 }
mongos> db.runCommand({enableSharding:"readrecord"});
{ "ok" : 1 }
mongos> db.runCommand({shardcollection:"readrecord.comic_readrecord",key:{user_id:1}});
{ "collectionsharded" : "readrecord.comic_readrecord", "ok" : 1 }
mongos> db.runCommand({listshards:1})
{
"shards" : [
{
"_id" : "shard0000",
"host" : "192.168.1.246:9001"
},
{
"_id" : "shard0001",
"host" : "192.168.1.246:9002"
}
],
"ok" : 1
}
扩展 shard节点的master/slave配置
mkdir database\shared3
title: MongoDB shared3 Start by xiaofancn
cls
rem 默认
bin\mongod.exe --shardsvr --master --dbpath database\shared3 --port 8003 --rest
mkdir database\shared3Slave
title: MongoDB shared3 Start by xiaofancn
cls
rem 默认
bin\mongod.exe --slave --source localhost:8003 --dbpath database\shared3Slave --rest