当前位置:操作系统 > Unix/Linux >>

mongo单台设备分片--2

mongo单台设备分片--2
 
mongodb please create an index over the sharding key before sharding 
 
使用单一索引,如果collection中没有索引,就会报错 
 
config={_id:'shard1',members:[{_id: 0, host: '127.0.0.1:27018'},{_id: 1,
host: '127.0.0.1:27019'},{_id: 2, host: '127.0.0.1:27020'},{_id: 3, host: '127.0.0.1:27021'}]} 
 
rs.initiate(config); 
rs.add({"_id" : 4,host : "127.0.0.1:27022",arbiterOnly:true}); 
 
config={_id:'shard2',members:[{_id: 0, host: '127.0.0.1:27028'},{_id: 1,
host: '127.0.0.1:27029'},{_id: 2, host: '127.0.0.1:27030'},{_id: 3, host: '127.0.0.1:27031'}]} 
 
rs.initiate(config); 
rs.add({"_id" : 4,host : "127.0.0.1:27032",arbiterOnly:true}); 
 
config={_id:'shard3',members:[{_id: 0, host: '127.0.0.1:27038'},{_id: 1,
host: '127.0.0.1:27039'},{_id: 2, host: '127.0.0.1:27040'},{_id: 3, host: '127.0.0.1:27041'}]} 
 
rs.initiate(config); 
rs.add({"_id" : 4,host : "127.0.0.1:27042",arbiterOnly:true}); 
 
sudo mongod --configsvr --dbpath /data/mongo/ReplicaSetData-shard1/
config --port 20000 --logpath /data/mongo/ReplicaSetData-shard1/config.log --logappend --fork 
 
sudo mongod --configsvr --dbpath /data/mongo/ReplicaSetData-shard2/
config --port 20001 --logpath /data/mongo/ReplicaSetData-shard2/config.log --logappend --fork 
 
sudo mongod --configsvr --dbpath /data/mongo/ReplicaSetData-shard3/
config --port 20002 --logpath /data/mongo/ReplicaSetData-shard3/config.log --logappend --fork 
 
sudo mongos --configdb 127.0.0.1:20000,127.0.0.1:20001,127.0.0.1:
20002 --port 30000 --chunkSize 5 --logpath /data/mongo/ReplicaSetData-
shard-log/mongos.log --logappend --fork 
 
db.runCommand( { addshard : "shard1/127.0.0.1:27018,127.0.0.1:27019,
127.0.0.1:27020,127.0.0.1:
27021,127.0.0.1:27022",name:"s1",maxsize:20480} ); 
 
db.runCommand( { addshard : "shard2/127.0.0.1:27028,127.0.0.1:27029,
127.0.0.1:27030,127.0.0.1:27031,
127.0.0.1:27032",name:"s2",maxsize:20480} ); 
 
db.runCommand( { addshard : "shard3/127.0.0.1:27038,127.0.0.1:27039,
127.0.0.1:27040,127.0.0.1:27041,
127.0.0.1:27042",name:"s3",maxsize:20480} ); 
 
db.runCommand( { listshards : 1 } ) 
 
db.runCommand( { enablesharding : "cooler" } ); 
 
 
db.runCommand( { shardcollection : "cooler.c1",key : {id: 1} } ) 
 
for (var i = 1; i <= 200003; i++) db.c1.save({id:i,value1:"1234567890",
value2:"1234567890",value3:
"1234567890",value4:"1234567890"}); 
 
db.printShardingStatus() 
db.c1.stats()
 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,