/data/
mongod --install --serviceName MongoDBServer2 --serviceDisplayName MongoDBServer2 --shardsvr --replSet shard2 --port 27018 --dbpath "D:\mongodb-win32-i386-2.0.2\data\shard2_1"
--oplogSize 100 --logpath "D:\mongodb-win32-i386-2.0.2\data\log\shard2_1.log" --logappend --profile=1 --slowms=5 --rest
2、mongo連接27017配置shard1
> config = {_id: "shard1", members: [
{_id: 0, host: "192.168.1.41:27017"},
{_id: 1, host: "192.168.1.19:27017"},
{_id: 2, host: "192.168.1.40:27017"}]
}
mongo連接27017配置shard2
> config = {_id: "shard2", members: [
{_id: 0, host: "192.168.1.41:27018"},
{_id: 1, host: "192.168.1.19:27018"},
{_id: 2, host: "192.168.1.40:27018"}]
}
注:配置修改後(rs.reconfig()),需重新啓動服務才能生效,config的修改需從Primary中修改。
{
"_id" : "shard1",
"version" : 1,
"members" : [
{
"_id" : 0,
"host" : "192.168.1.41:27017",priority :1,slavedelay :5
},
{
"_id" : 1,
"host" : "192.168.1.19:27017",priority :0,slavedelay :5
}
]
}
> rs.initiate(config);
3、配置config services
mongod
--install
--serviceName MongoDBConfigServer
--serviceDisplayName MongoDBConfigServer --configsvr --dbpath "D:\mongodb-win32-i386-2.0.2\data\config"
--port 20000 --logpath "D:\mongodb-win32-i386-2.0.2\data\log\config.log" --logappend
4、配置mongs
下載Windows Server 2003 Resource Kit Tools
命令行運行:
D:\mongodb-win32-i386-2.0.2\bin>"C:\Program Files\Windows Resource Kits\Tools\in
stsrv.exe" mongos "C:\Program Files\Windows Resource Kits\Tools\srvany.exe"
The service was successfuly added!
Make sure that you go into the Control Panel and use
the Services applet to change the Account Name and
Password that this newly installed service will use
for its Security Context.
mongos --configdb 192.168.1.19:20000,192.168.1.41:20000,192.168.1.40:20000 --port 30000 --chunkSize 5 --logpath "D:\mongodb-win32-i386-2.0.2\data\log\mongos.log" --logappend
--configdb 192.168.1.19:20000 --port 30000 --chunkSize 5 --logpath 'D:\mongodb-win32-i386-2.0.2\data\log\mongos.log' --logappend
sc create MongoDBMongosServer binpath= "D:\mongodb-win32-i386-2.0.2\bin\mongos.exe" displayname= "MongoDBMongosServer" depend= Tcpip start= auto
5、連接mongs
mongo 127.0.0.1:30000/admin
6、加入
單臺
>db.runCommand( {addshard:"127.0.0.1:27017",name:"shard1",maxsize:20480]" })
多臺
>db.runCommand( {addshard:"shard1/192.168.1.19:27017,192.168.1.41:27017,192.168.1.40:27017",name:"shard1",maxsize:20480} )
db.runCommand( {addshard:"shard2/192.168.1.19:27018,192.168.1.41:27018,192.168.1.40:27018",name:"shard2",maxsize:20480} )
刪除分片
db.runCommand( { removeshard : "shard_liyan2/127.0.0.1:16002,127.0.0.1:16004"} );
注:在增加分片服務器時,需要重啓mongos服務
7、查看
db.runCommand( { listshards : 1 } )
8、數據庫分片
db.runCommand( { enablesharding : "TestDB"} )
9、Collecton分片
db.runCommand( { shardcollection : "TestDB.UserInfo",
key : {UserId : 1} } )
10、測試
for (var i = 1; i <= 200000; i++) db.UserInfo.save({UserId:i, value1:"FengYi1234567890", value2:"1234567890",value3:"1234567890"})
db.UserInfo.find({UserId:1})
參考資料: