拓扑图:
配置文件:
mongos:
logpath = D:\sharding\mongos\data\log\mongos.log keyFile= D:\sharding\keyfile logappend = true configdb = 127.0.0.1:21000 maxConns = 10000 rest = false port=20000
ConfigServer:
dbpath = D:\sharding\configServer\data\db logpath = D:\sharding\configServer\data\log\config.log auth = true keyFile= D:\sharding\keyfile maxConns = 10000 rest = false configsvr = true directoryperdb = true port=21000
shard1:
dbpath = D:\sharding\shard1\data\db logpath = D:\sharding\shard1\data\log\shard1.log auth = true keyFile= D:\sharding\keyfile maxConns = 10000 rest = false shardsvr = true directoryperdb = true port=27001
shard2:
dbpath = D:\sharding\shard2\data\db logpath = D:\sharding\shard2\data\log\shard2.log auth = true keyFile= D:\sharding\keyfile maxConns = 10000 rest = false shardsvr = true directoryperdb = true port=27002
启动服务器:
D:\sharding\configServer\bin\mongod -f D:\sharding\configServer\etc\config.conf D:\sharding\shard1\bin\mongod -f D:\sharding\shard1\etc\shard1.conf D:\sharding\shard2\bin\mongod -f D:\sharding\shard2\etc\shard2.conf D:\sharding\mongos\bin\mongos -f D:\sharding\mongos\etc\mongos.conf
启用分片:
登陆mongos:
D:\sharding\mongos\bin\mongo --port 20000
mongos> use admin
switched to db admin
mongos> sh.addShard("127.0.0.1:27001")
{ "shardAdded" : "shard0000", "ok" : 1 }
mongos> sh.addShard("127.0.0.1:27002")
{ "shardAdded" : "shard0001", "ok" : 1 }
mongos> db.runCommand({listshards : 1 });
{
"shards" : [
{
"_id" : "shard0000",
"host" : "127.0.0.1:27001"
},
{
"_id" : "shard0001",
"host" : "127.0.0.1:27002"
}
],
"ok" : 1
}
mongos> exit
bye测试:
D:\sharding\mongos\bin\mongo 127.0.0.1:20000
mongos> use admin
switched to db admin
#指定testdb分片生效
mongos> db.runCommand( { enablesharding :"testdb"});
{ "ok" : 1 }
#指定数据库里需要分片的集合和片键
mongos> db.runCommand( { shardcollection : "testdb.table1",key : {id: 1} } )
{ "collectionsharded" : "testdb.table1", "ok" : 1 }
mongos> use testdb
switched to db testdb
mongos> for(var i=1; i <= 100000; i++)db.table1.save({id:i,"test1":"testval1"});
mongos> db.table1.stats();
没有帐号? 立即注册