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'}]}
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'}]}
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'}]}
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
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
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
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
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} );
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} );
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} );
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"});
value2:"1234567890",value3:
"1234567890",value4:"1234567890"});
db.printShardingStatus()
db.c1.stats()